]> sourceware.org Git - newlib-cygwin.git/commitdiff
Cygwin: fhandler_fifo::take_ownership: don't set event unnecessarily
authorKen Brown <kbrown@cornell.edu>
Sun, 12 Jul 2020 22:11:38 +0000 (18:11 -0400)
committerKen Brown <kbrown@cornell.edu>
Thu, 16 Jul 2020 19:59:53 +0000 (15:59 -0400)
Don't set update_needed_evt if there's currently no owner.  This will
cause unnecessary churn once I'm the owner and am listening for
connections.

winsup/cygwin/fhandler_fifo.cc

index b6e172ddc86e191141be058cafcb9cea86942683..fd1695f4033a629d4fd297fc93ad8bbb8a358b4a 100644 (file)
@@ -1186,8 +1186,11 @@ fhandler_fifo::take_ownership ()
       return;
     }
   set_pending_owner (me);
+  /* Wake up my fifo_reader_thread. */
   owner_needed ();
-  SetEvent (update_needed_evt);
+  if (get_owner ())
+    /* Wake up owner's fifo_reader_thread. */
+    SetEvent (update_needed_evt);
   owner_unlock ();
   /* The reader threads should now do the transfer.  */
   WaitForSingleObject (owner_found_evt, INFINITE);
This page took 0.031795 seconds and 5 git commands to generate.