The SyncEvent class

(PECL sync >= 1.0.0)

Introduction

A cross-platform, native implementation of named and unnamed event objects. Both automatic and manual event objects are supported.

An event object waits, without polling, for the object to be fired/set.
One instance waits on the event object while another instance fires/sets
the event. Event objects are useful wherever a long-running process would
otherwise poll a resource (e.g. checking to see if uploaded data needs to
be processed).