Я не знаю, построен ли механизм Thrift RPC для обработки вызовов, идущих в обе стороны при соединении с одним сокетом.
Если этого не произойдет, простой обходной путь - открыть два сокета - одиндля клиента, чтобы сделать вызовы к серверу и другой для сервера, чтобы сделать вызовы к клиенту.
Другой обходной путь должен был бы реализовать двусторонний вызов самостоятельно.Библиотека Thrift относительно подключаема, поэтому вы можете подключить туда свой собственный код для обработки двусторонних вызовов без необходимости возиться с другими вещами.
Вы, вероятно, получите лучшие ответы, если спроситеэтот вопрос в списках рассылки Thrift .