И вот ещё один момент - всё работает как и ожидается даже с бустом в .dll, если я не использую static инициализацию класса, в котором мембер это io_context.
Если использую, то всё висит, хотя деструктор класса уже вызвался...
То есть если создавать так, то всё висит.
TimedSendClient& TimedSendClient::getInstance(const Config& config) {
static TimedSendClient tg_notifier(config);
return tg_notifier;
}
Если не как Singletone, а напрямую, то есть через TimedSendClient tg_notifier(config), то всё работает...