summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changes4
-rw-r--r--ev.pod8
2 files changed, 7 insertions, 5 deletions
diff --git a/Changes b/Changes
index e97072e..a925e6c 100644
--- a/Changes
+++ b/Changes
@@ -1,9 +1,5 @@
Revision history for libev, a high-performance and full-featured event loop.
-TODO: include ev_xyz_start in each example?
-TODO: which supports signals and child events
-TODO: pointer races
-TODO: ev_default_destroy, ev_default_fork
- "PORTING FROM LIBEV 3.X TO 4.X" (in ev.pod) is recommended reading.
- ev_embed_stop did not correctly stop the watcher (very good
testcase by Vladimir Timofeev).
diff --git a/ev.pod b/ev.pod
index 2b30871..b09fd04 100644
--- a/ev.pod
+++ b/ev.pod
@@ -4759,6 +4759,11 @@ assumes that the same (machine) code can be used to call any watcher
callback: The watcher callbacks have different type signatures, but libev
calls them using an C<ev_watcher *> internally.
+=item pointer accesses must be thread-atomic
+
+Accessing a pointer value must be atomic, it must both be readable and
+writable in one piece - this is the case on all current architectures.
+
=item C<sig_atomic_t volatile> must be thread-atomic as well
The type C<sig_atomic_t volatile> (or whatever is defined as
@@ -5006,5 +5011,6 @@ to be started (attached to an event loop) before they can receive events.
=head1 AUTHOR
-Marc Lehmann <libev@schmorp.de>, with repeated corrections by Mikael Magnusson.
+Marc Lehmann <libev@schmorp.de>, with repeated corrections by Mikael
+Magnusson and Emanuele Giaquinta.