|
ab96b5f3
|
2009-11-09T18:30:33
|
|
Add an option to disable the timeval cache.
svn:r1518
|
|
693c24ef
|
2009-11-09T17:16:30
|
|
Implement queued timeouts for case where many timeouts are the same.
Libevent's current timeout code is relatively optimized for the
randomly scattered timeout case, where events are added with their
timeouts in no particular order. We add and remove timeouts with
O(lg n) behavior.
Frequently, however, an application will want to have many timeouts
of the same value. For example, we might have 1000 bufferevents,
each with a 2 second timeout on reading or writing. If we knew this
were always the case, we could just put timeouts in a queue and get
O(1) add and remove behavior. Of course, a queue would give O(n)
performance for a scattered timeout pattern, so we don't want to
just switch the implementation.
This patch gives the user the ability to explicitly tag certain
timeout values as being "very common". These timeout values have a
cookie encoded in the high bits of their tv_usec field to indicate
which queue they belong on. The queues themselves are each
triggered by an entry in the minheap.
See the regress_main.c code for an example use.
svn:r1517
|
|
e9ee1057
|
2009-10-27T04:25:45
|
|
Give event_assign a return value, and make it less inclined to exit().
We also refactor event_assign so that it is the core function, and
event_set() is only the wrapper.
svn:r1469
|
|
a8267663
|
2009-10-26T19:59:51
|
|
API to replace all calls to exit() with a user-supplied fatal-error handler.
Also, add unit tests for logging.
svn:r1462
|
|
879420a7
|
2009-10-23T22:00:29
|
|
Expose a narrow window to the IOCP code.
svn:r1459
|
|
b73ad7bc
|
2009-10-21T18:48:22
|
|
Treat the bitwise OR of two enum values as an int.
This makes our interfaces usable from C++, which doesn't believe
you can say "bufferevent_socket_nase(base, -1,
BEV_OPT_CLOSE_ON_FREE|BEV_OPT_DEFER_CALLBACKS)" but which instead
would demand "static_cast<bufferevent_options>(BEV_OPT_CLOSE_ON_FREE|
BEV_OPT_DEFER_CALLBACKS))" for the last argument.
Diagnosis and patch from Chris Davis.
svn:r1456
|
|
d5b640fc
|
2009-10-01T15:29:08
|
|
Apply Ka-Hing Cheung's event_base_got_[break|exit] patch, with locking and whitespace fixes.
svn:r1438
|
|
d3bef1a1
|
2009-07-17T20:32:25
|
|
Finish implementing new convention that whenever an optional function is declared, a corresponding macro is defined.
svn:r1361
|
|
eb97bb76
|
2009-05-28T15:58:28
|
|
Make the headers compile happily with pedantic C compilers.
Original message from SF patch 2797966:
While commas at the end of enumerator lists are valid in c99, they
are not valid +in c89 nor in c++. When using gcc/g++ with the
-pedantic flag, users will +receive a warning (gcc) or an
error(g++) when including the event2/event.h and
+event2/bufferevent.h. The errors look something like
event2/event.h:159: error: comma at end of enumerator list
Patch from Akita Noek on Sourceforge.
svn:r1321
|
|
0b4ab122
|
2009-05-28T15:47:15
|
|
Spell-check the the headers
svn:r1320
|
|
b4886ec8
|
2009-05-15T18:44:44
|
|
Trim 22 bytes from struct event on 32 bit platforms, more on 64-bit platforms.
svn:r1292
|
|
0fd70978
|
2009-05-05T01:09:03
|
|
Add an event_get_base() function to remove one more reason to include event_struct.h
svn:r1271
|
|
d5ca0763
|
2009-05-02T16:23:29
|
|
Move event_set() and friends to event2/event_compat.h.
These functions are deprecated in favor of event_assign().
svn:r1267
|
|
19594141
|
2009-04-29T20:48:21
|
|
Clarify semantics on event_pending()
svn:r1249
|
|
11ff74cf
|
2009-04-22T19:41:23
|
|
Add a flag to disable checking the EVENT_* environment variables.
svn:r1220
|
|
ea8cc76c
|
2009-04-21T18:47:23
|
|
Fix the documentation of event_pending.
svn:r1215
|
|
f00f0c25
|
2009-04-18T04:34:45
|
|
make doxygen happier
svn:r1199
|
|
d047b323
|
2009-04-17T17:22:32
|
|
Increment version to 2.0.1-alpha, and add a numeric version facility
svn:r1193
|
|
7fa8451d
|
2009-04-17T06:56:57
|
|
Add a configure flag to hardcode all of our mm functions.
svn:r1186
|
|
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
|
|
9993137c
|
2009-01-27T21:10:31
|
|
Remove all trailing whitespace in all the source files.
svn:r1063
|
|
bdbd5e0e
|
2009-01-26T17:09:37
|
|
For every deprecated function, explain why it is deprecated and what you should call instead.
svn:r1052
|
|
f20902a2
|
2009-01-22T17:56:15
|
|
Remove evperiodic_assign and its related parts: its functionality is subsumed by EV_PERSIST timeouts.
svn:r1040
|
|
d776f846
|
2008-12-23T22:23:37
|
|
deprecate the usage of signal_{add,del,set} and name it evsignal_{add,del,set} instead; move the old definitions to compat
svn:r973
|
|
480d8142
|
2008-06-01T01:19:08
|
|
do not define a variable in a header file; it will lead to duplicate symbols when linking
svn:r844
|
|
f9707a01
|
2008-05-31T18:57:21
|
|
we need to declare the enum first before it can be used; c++ compilation errors
svn:r843
|
|
05965921
|
2008-05-31T14:37:31
|
|
Add new functions to access backends by their features and to query the features of a backend.
svn:r842
|
|
39400e68
|
2008-05-30T16:56:34
|
|
Patch from Valery Kholodkov: support for edge-triggered events with epoll and kqueue. Changed from original patch: made test into a regression test, with explicit success/failure for edge-triggered and non-edge-triggered cases. Closes SF request 1968284.
svn:r840
|
|
8b66f1bd
|
2008-05-17T02:14:17
|
|
constify struct timeval *
svn:r836
|
|
a68de252
|
2008-05-15T03:49:03
|
|
r19749@catbus: nickm | 2008-05-14 23:48:44 -0400
New function to dump inserted and active events. Also do not recv() on an int array.
svn:r829
|
|
6bf1ca78
|
2008-05-12T00:40:04
|
|
r19675@catbus: nickm | 2008-05-11 20:39:39 -0400
Stop pretending that u_char and u_short are standard types that win32 is dumb not to have. In fact, u_char can really just be spelled out, and u_short was usually just a bad way of saying ev_uint16_t.
svn:r808
|
|
8acb80b4
|
2008-05-08T22:51:39
|
|
r15551@tombo: nickm | 2008-05-08 14:49:20 -0400
Use _get_ convention for new accessor functions. (These are all new ones as of 2.0, I believe).
svn:r799
|
|
85ed7133
|
2008-05-08T07:00:16
|
|
deprecate timeout_* event functions by moving them to event_compat.h
svn:r791
|
|
3f56e364
|
2008-05-08T05:56:20
|
|
event_base_new_with_config() and related methods
svn:r789
|
|
3b2022ef
|
2008-05-08T05:33:15
|
|
provide an api for retrieving the supported event mechanisms
svn:r788
|
|
957e9fd8
|
2008-05-05T17:49:52
|
|
r19607@catbus: nickm | 2008-05-05 13:49:44 -0400
Hack to make sure that there is always a working fast EVENT_FD()
svn:r777
|
|
bc6da5ea
|
2008-05-05T15:45:39
|
|
r19600@catbus: nickm | 2008-05-05 11:34:06 -0400
Move EV_* flags into event.h; they are a necessary part of the public API.
svn:r774
|
|
d0c3644e
|
2008-05-05T15:45:30
|
|
r19599@catbus: nickm | 2008-05-05 11:26:18 -0400
Turn event_initialized() and friends into a function; add function equivalents for EVENT_FD and EVENT_SIGNAL.
svn:r773
|
|
181007b9
|
2008-05-03T22:14:44
|
|
make event_assign void; it cannot return an error
svn:r763
|
|
1d30750b
|
2008-05-03T22:10:09
|
|
support for periodic timeouts
svn:r762
|
|
5fbc7f0a
|
2008-05-02T16:28:25
|
|
r15439@tombo: nickm | 2008-05-02 12:28:08 -0400
use event_assign internall; switch uses of event_set to use event_assign instead.
svn:r755
|
|
94fb4d0a
|
2008-04-25T01:18:18
|
|
r15317@tombo: nickm | 2008-04-24 21:17:49 -0400
Add new functions to be more threadsafe (and structure-ignorant) than event_set.
svn:r726
|
|
963ae2cf
|
2008-04-16T21:01:31
|
|
r15212@tombo: nickm | 2008-04-16 17:01:21 -0400
Remove some needless includes
svn:r712
|
|
0ac73078
|
2008-04-16T20:01:51
|
|
r15193@tombo: nickm | 2008-04-16 16:00:35 -0400
Split event.h into several new headers in include/event2. event.h is now just a wrapper that includes all the subheaders.
svn:r711
|