Kiedy czytałem kod źródłowy seastar , zauważyłem, że istnieje zwana struktura związkowa, tx_sidektóra ma tylko jednego członka. Czy to jakiś hack, aby poradzić sobie z pewnym problemem?
Do Twojej wiadomości wklejam tx_sideponiższą strukturę:
union tx_side {
tx_side() {}
~tx_side() {}
void init() { new (&a) aa; }
struct aa {
std::deque<work_item*> pending_fifo;
} a;
} _tx;
unionzamiast structjednej jest jedna lub więcej różnic między nimi. Jest to dość niejasna technika, więc jeśli nie pojawi się oryginalny autor tego kodu, nie jestem pewien, czy ktoś może udzielić wiarygodnej odpowiedzi na pytanie, jaki problem ma rozwiązać (jeśli w ogóle).