|
e7dc501e
|
2010-09-08T14:40:51
|
|
Implement EVBASE_NEED_NOTIFY on win32
|
|
9580e282
|
2010-09-08T14:00:45
|
|
Merge branch 'th_notify_fd_reinit'
|
|
c7a06bfa
|
2010-09-08T13:02:58
|
|
Avoid needlessly calling evthread_notify_base() when the loop is not running
Also make sure that we always hold the base lock when calling evthread_notify_base.
|
|
5de2bcb7
|
2010-09-01T16:03:39
|
|
On windows, make lock/thread function tables static
This requires us to have a separate implementation of the lock macros
that indirects to a set of functions. Fortunately, this isn't too
hard to do.
This may be a fix for bug 3042969, where our openssl dll and our
libevent dll each got their own version of the thread stuff.
|
|
d4977b52
|
2010-08-17T13:15:34
|
|
Add a condition variable backend, with implementations for pthreads and win32
The interface from the user's POV is similar to the locking
implementation: either provide a structure full of function
pointers, or just call evthread_use_*_threads() and everything will
be okay.
The internal interface is meant to vaguely resemble pthread_cond_*,
which Windows people will better recognize as *ConditionVariable*.
|
|
ec347b92
|
2010-07-07T16:45:03
|
|
Move event-config.h to include/event2
This change means that all required include files are in event2, and
all files not in event2/* are optional.
|
|
218a3c37
|
2010-05-13T11:24:07
|
|
Do not check that event_base is set in EVBASE_ACQUIRE_LOCK
In every place that we call EVBASE_ACQUIRE_LOCK, the base is either
set, or must be set, so the test is redundant.
|
|
17efc1cd
|
2010-03-04T01:25:51
|
|
Update all our copyright notices to say "2010"
|
|
e5bbd40a
|
2010-02-18T17:41:15
|
|
Clean up formatting: use tabs, not 8-spaces, to indent.
|
|
97a8c790
|
2010-01-22T00:34:21
|
|
Fix compilation of rate-limit code when threading support is disabled
|
|
689fc091
|
2009-11-28T11:31:39
|
|
New EVTHREAD_TRY_LOCK function to try to grab a lock.
|
|
0cd3bb9f
|
2009-11-27T17:22:19
|
|
Improved optional lock debugging.
There were a couple of places in the code where we manually kept lock
counts to make sure we never accessed resources without holding a
lock, and that we never released a lock we didn't have. The
lock-debugging code already puts counts on _every_ lock when lock
debugging is enabled, so there is no need to keep these counts around
otherwise. This patch rewrites the ASSERT_FOO_LOCKED macros to all
use a common EVLOCK_ASSERT_LOCKED().
We also teach the lock debugging code to keep track of who exactly
holds each lock, so that EVLOCK_ASSERT_LOCKED() means "locked by this
thread."
|
|
76cd2b70
|
2009-11-27T16:44:47
|
|
Stop passing EVTHREAD_READ and EVTHREAD_WRITE to non-rw locks.
Previously, our default lock model kind of assumed that every lock was
potentially a read-write lock. This was a poor choice, since
read-write locks are far more expensive than regular locks, and so the
lock API should only use them when we can actually take advantage of
them. Neither our pthreads or win32 lock implementation provided rw
locks.
Now that we have a way (not currently used!) to indicate that we
really want a read-write lock, we shouldn't actually say "lock this
for reading" or "lock this for writing" unless we mean it.
|
|
347952ff
|
2009-11-27T15:20:43
|
|
Revise the locking API: deprecate the old locking callbacks and add trylock.
Previously, there was no good way to request different kinds of lock
(say, read/write vs writeonly or recursive vs nonrecursive), or for a
lock function to signal failure (which would be important for a
trylock mode).
This patch revises the lock API to be a bit more useful. The older
lock calls are still supported for now.
We also add a debugging mode to catch common errors in using the
locking APIs.
|
|
e3fd294a
|
2009-10-16T13:19:57
|
|
Spelling fixes in comments and strings.
svn:r1445
|
|
eda27f95
|
2009-04-19T20:54:12
|
|
Update copyright notices, add some missing license statements
svn:r1208
|
|
838d0a81
|
2009-04-17T06:55:08
|
|
Document many internal functions and pieces of code.
svn:r1181
|
|
28255a26
|
2009-04-05T04:26:46
|
|
Finally, get unit tests to pass with threading turned off again.
svn:r1137
|
|
661b5eea
|
2009-04-05T04:10:05
|
|
Actually, move EVUTIL_NIL_STMT to util-internal.h
svn:r1135
|
|
d13b59ce
|
2009-04-05T02:44:04
|
|
Fix build with thread support disabled, and make no-op macros a little more no-oppy.
svn:r1133
|
|
70ee390f
|
2009-04-05T02:43:55
|
|
Add some more utility macros to evthread-internal.h
svn:r1132
|
|
ec35eb55
|
2009-02-12T22:19:54
|
|
Make threading functions global, like the mm_ functions. Use the libevent_pthread.la library in regress_pthread.
svn:r1121
|
|
b85b710c
|
2009-01-27T22:34:36
|
|
Update copyright statements to reflect the facts that:
a) this is 2009
b) niels and nick have been comaintainers for a while
c) saying "all rights reserved" when you then go on to explicitly
disclaim some rights is sheer cargo-cultism.
svn:r1065
|
|
8889a770
|
2009-01-27T22:30:46
|
|
Replace all use of config.h with event-config.h.
svn:r1064
|
|
502929cd
|
2008-03-31T00:31:53
|
|
add a check that base != NULL for threading; might want to drop this later
svn:r696
|
|
c182baca
|
2008-03-10T03:17:20
|
|
switch thread support so that locks get allocated as they are needed.
svn:r690
|
|
558de9b3
|
2008-03-02T21:18:33
|
|
Provide OpenSSL style support for multiple threads accessing the same event_base
svn:r684
|