Cuando estaba leyendo el código fuente de Seastar , noté que hay una estructura de unión llamada tx_sideque tiene un solo miembro. ¿Es esto un truco para lidiar con cierto problema?
FYI, pego la tx_sideestructura a continuación:
union tx_side {
tx_side() {}
~tx_side() {}
void init() { new (&a) aa; }
struct aa {
std::deque<work_item*> pending_fifo;
} a;
} _tx;
unionlugar de structes una o más de las diferencias entre los dos. Es una técnica bastante oscura, así que a menos que aparezca el autor original de ese código, no estoy seguro de que alguien pueda darle una respuesta autorizada sobre el problema que esperan resolver con esto (si lo hay).