Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-3786

QThreadPool synchronization defect in expiration mechanism.

XMLWordPrintable

    • a9b6a78e54670a70b96c122b10ad7bd64d166514

      It looks like QThreadPool has some thread synchronization defect in
      expiration mechanism.

      I am using QThreadPool for running some tasks in a separate thread. I have
      faced the following problem. Sometimes the task (QRunnable descendant) does
      not start despite of the pool is idle, i.e. activeThreadCount() is 0. The
      bug is reproduced when start() is called simultaneously with the moment of
      thread life's expiration due to 30-second timeout. I see that starting of
      another task causes thread pool to start the frozen one as well.

        1. ThreadPoolSample2.zip
          5 kB
          Ryan van der Bijl
        2. ThreadPoolSample.zip
          5 kB
          Bradley T. Hughes (closed Nokia Identity)
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            dfaure David Faure (Private)
            xcm Martin Petersson (Inactive)
            Votes:
            3 Vote for this issue
            Watchers:
            16 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes