Changes between Version 2 and Version 3 of Ticket #199, comment 4


Ignore:
Timestamp:
Jul 25, 2011, 12:14:50 PM (13 years ago)
Author:
Dmitry A. Kuminov
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #199, comment 4

    v2 v3  
    1 I found two more problems of the current implementation. They turned to be easy to catch on SMP.
     1I found two more problems of the current implementation. They turned to be easy to catch on SMP, especially when the application reads/writes data in large chunks close to the pipe buffer size (64K).
    22
    33  3. When working in sync mode (waitForBytesWritten(), waitForReadyRead() etc), it is possible that the application enters the sync mode right after the worker thread sends an async signal for the next block of data available in the pipe. Since the worker notifies only once for each block, noone will notify the application waiting inside of waitFor() and the async message is of no use because the event loop is not run. This results in a hang.