I´ve built an application that is running on a Windows 7 inside a VirtualBox, with zeromq 3.2.2.
== The problem == When running one test, I noticed that my application called zmq_poll with timeout of 2000 but it at one day stopped expiring the timeout. Similarly, a client application that connected to it and had a loop that used QueryPerformanceCounter for timeout, suddenly froze and stopped firing the timeout. After doing some research, I have found that VirtualBox's QueryPerformanceCounter doesn't guarantee monotonicity https://www.virtualbox.org/ticket/11951. They argue that even Windows QueryPerformanceCounter doesn't guarantee it. Then I have found that zmq_poll calls clock_t::now_ms which in turn calls clock_t::now_us which uses QueryPerformanceCounter. == My proposal == We could add a zeromq define that makes zmq_poll use a low precision timer, such as GetTickCount64 which has less bugs. _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
