Well, we are currently passing INFINITE timeout value to WaitForMultipleObjects() API which is hanging. I thought of changing this INIFINTE timeout interval to some finite value like say 1 sec and could not reproduce the issue. But, having said that i checked the older code where this issue does not exists and found here as well we are passing INFINTE timeout value to WaitForMultipleObjects(). So not sure if this passing INFINITE timeout is really an issue. Attached is a small patch that has my changes.