Closed
Description
Win32, VS2010.
If a global zmq::context_t instance is defined in a dll, this assertion will fail when exiting:
Assertion failed: Successful WSASTARTUP not yet performed (..\..\..\src\signaler.cpp: 134)
call stack:
libzmq-v100-mt-gd-4_0_4.dll!zmq::zmq_abort(const char * errmsg_) line 71 + 0x15 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::signaler_t::send() line 134 + 0x55 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::mailbox_t::send(const zmq::command_t & cmd_) line 56 C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::ctx_t::send_command(unsigned int tid_, const zmq::command_t & command_) line 327 C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::object_t::send_stop() line 183 C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::socket_base_t::stop() line 162 C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::ctx_t::terminate() line 134 + 0x16 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq_ctx_term(void * ctx_) line 171 + 0x8 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq_ctx_destroy(void * ctx_) line 241 + 0x9 bytes C++
ZeroMQ.dll!zmq::context_t::close() line 304 + 0xe bytes C++
ZeroMQ.dll!zmq::context_t::~context_t() line 298 C++
ZeroMQ.dll!ZeroMQ::`dynamic atexit destructor for 'g_Context''() + 0x28 bytes C++
ZeroMQ.dll!_CRT_INIT(void * hDllHandle, unsigned long dwReason, void * lpreserved) line 415 C
ZeroMQ.dll!__DllMainCRTStartup(void * hDllHandle, unsigned long dwReason, void * lpreserved) line 526 + 0x11 bytes C
ZeroMQ.dll!_DllMainCRTStartup(void * hDllHandle, unsigned long dwReason, void * lpreserved) line 476 + 0x11 bytes C
Sometimes another assertion fails:
Assertion failed: Successful WSASTARTUP not yet performed (..\..\..\src\signaler.cpp: 209)
call stack:
libzmq-v100-mt-gd-4_0_4.dll!zmq::zmq_abort(const char * errmsg_) line 71 + 0x15 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::signaler_t::wait(int timeout_) line 209 + 0x64 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::mailbox_t::recv(zmq::command_t * cmd_, int timeout_) line 72 + 0xf bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq::ctx_t::terminate() line 142 + 0x11 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq_ctx_term(void * ctx_) line 171 + 0x8 bytes C++
libzmq-v100-mt-gd-4_0_4.dll!zmq_ctx_destroy(void * ctx_) line 241 + 0x9 bytes C++
ZeroMQ.dll!zmq::context_t::close() line 304 + 0xe bytes C++
ZeroMQ.dll!zmq::context_t::~context_t() line 298 C++
ZeroMQ.dll!ZeroMQ::`dynamic atexit destructor for 'g_Context''() + 0x28 bytes C++
ZeroMQ.dll!_CRT_INIT(void * hDllHandle, unsigned long dwReason, void * lpreserved) line 415 C
ZeroMQ.dll!__DllMainCRTStartup(void * hDllHandle, unsigned long dwReason, void * lpreserved) line 526 + 0x11 bytes C
ZeroMQ.dll!_DllMainCRTStartup(void * hDllHandle, unsigned long dwReason, void * lpreserved) line 476 + 0x11 bytes C
If the global zmq::context_t instance is defined in the exe, everything is fine.
Metadata
Metadata
Assignees
Labels
No labels