Ketika saya membaca kode sumber seastar , saya perhatikan bahwa ada struktur gabungan tx_side
yang hanya memiliki satu anggota. Apakah ini beberapa hack untuk menangani masalah tertentu?
FYI, saya tempel tx_side
struktur di bawah ini:
union tx_side {
tx_side() {}
~tx_side() {}
void init() { new (&a) aa; }
struct aa {
std::deque<work_item*> pending_fifo;
} a;
} _tx;
union
bukannya struct
satu atau lebih perbedaan antara keduanya. Ini adalah teknik yang sangat tidak jelas sehingga kecuali penulis asli kode itu datang, saya tidak yakin seseorang dapat memberi Anda jawaban otoritatif yang masalah mereka berharap untuk menyelesaikan dengan ini (jika ada).