1. 22 Tem, 2014 13 kayıt (commit)
  2. 21 Tem, 2014 14 kayıt (commit)
  3. 20 Tem, 2014 2 kayıt (commit)
  4. 19 Tem, 2014 4 kayıt (commit)
  5. 18 Tem, 2014 4 kayıt (commit)
  6. 17 Tem, 2014 3 kayıt (commit)
    • Victor Stinner's avatar
      (Merge 3.4) Issue #21247: Fix a race condition in test_send_signal() of asyncio · 75dada6a
      Victor Stinner yazdı
      Add a basic synchronization mechanism to wait until the child process is ready
      before sending it a signal.
      75dada6a
    • Victor Stinner's avatar
      Issue #21247: Fix a race condition in test_send_signal() of asyncio · 98fa332e
      Victor Stinner yazdı
      Add a basic synchronization mechanism to wait until the child process is ready
      before sending it a signal.
      98fa332e
    • Victor Stinner's avatar
      (Merge 3.4) Python issue #21645, Tulip issue 192: Rewrite signal handling · 2fa2c3df
      Victor Stinner yazdı
      Since Python 3.3, the C signal handler writes the signal number into the wakeup
      file descriptor and then schedules the Python call using Py_AddPendingCall().
      
      asyncio uses the wakeup file descriptor to wake up the event loop, and relies
      on Py_AddPendingCall() to schedule the final callback with call_soon().
      
      If the C signal handler is called in a thread different than the thread of the
      event loop, the loop is awaken but Py_AddPendingCall() was not called yet. In
      this case, the event loop has nothing to do and go to sleep again.
      Py_AddPendingCall() is called while the event loop is sleeping again and so the
      final callback is not scheduled immediatly.
      
      This patch changes how asyncio handles signals. Instead of relying on
      Py_AddPendingCall() and the wakeup file descriptor, asyncio now only relies on
      the wakeup file descriptor. asyncio reads signal numbers from the wakeup file
      descriptor to call its signal handler.
      2fa2c3df