Project

General

Profile

Actions

Bug #3441

closed

wtwithqt: deadlock because condition_variable.notify_one() is called under mutex

Added by Anonymous over 10 years ago. Updated about 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Start date:
07/07/2014
Due date:
% Done:

0%

Estimated time:

Description

Hello!

According to Boost Synchronization [1], condition_variable.notify_one() must not be called under mutex, but it does so in DispatchThread.C in two places. This seems to be possible reason of deadlocks which happen from time to time in wtwithqt.

[1] http://www.boost.org/doc/libs/1_55_0/doc/html/thread/synchronization.html#thread.synchronization.condvar_ref

Actions #1

Updated by Koen Deforche about 10 years ago

  • Status changed from New to InProgress
  • Assignee set to Koen Deforche
  • Target version set to 3.3.4
Actions #2

Updated by Koen Deforche about 10 years ago

  • Status changed from InProgress to Resolved

Hey,

While it does not need to be locked, it may be. Anyway I agree it's a good idea to unlock before signalling, so I've made this change.

Koen

Actions #3

Updated by Koen Deforche about 10 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF