Commit Graph

1722 Commits

Author SHA1 Message Date
Christopher Kohlhoff
767d77e288 Chrono support. 2012-05-22 18:37:36 +10:00
Christopher Kohlhoff
a8dff333a9 asio version 1.6.1 released 2012-05-22 08:53:20 +10:00
Christopher Kohlhoff
c997b11191 Add checks for newer boost versions. 2012-05-21 06:37:35 +10:00
Christopher Kohlhoff
0eb526de63 Regenerate documentation. 2012-05-18 17:52:15 +10:00
Christopher Kohlhoff
600e603bfe Revision history. 2012-01-09 23:27:09 +11:00
Christopher Kohlhoff
6c59fdc6a0 Fix potential strand starvation issue that can occur when strand.post() is used. 2011-10-16 09:25:15 +11:00
Christopher Kohlhoff
1e039ea935 Update descriptor state allocation to match approach used in epoll_reactor. 2011-10-15 23:05:17 +11:00
Christopher Kohlhoff
1029b3c519 Construct interrupter first to fix exception safety issue. 2011-10-14 00:12:20 +11:00
Christopher Kohlhoff
390525df78 Programs can define ASIO_ENABLE_SEQUENTIAL_STRAND_ALLOCATION to switch
the allocation of strand implementations to use a round-robin approach
rather than hashing.
2011-10-13 23:48:41 +11:00
Christopher Kohlhoff
0c65d7ffc9 Make number of strand implementations configurable. 2011-10-13 23:37:02 +11:00
Christopher Kohlhoff
dcca5580c0 Clarify that read stops when buffer is full. 2011-10-09 09:37:42 +11:00
Christopher Kohlhoff
0da8a6f7ac Fix long lines. 2011-10-09 09:37:10 +11:00
Christopher Kohlhoff
05104e8ad9 Add latency tests. 2011-10-09 09:22:17 +11:00
Christopher Kohlhoff
82099be632 Initialise all openssl algorithms. 2011-10-08 22:23:30 +11:00
Christopher Kohlhoff
93bf0f4b8b Fix error mapping when session is gracefully shutdown. 2011-10-08 22:13:13 +11:00
Christopher Kohlhoff
fa4b15aab8 Remove unused state. 2011-10-08 21:30:26 +11:00
Christopher Kohlhoff
b23fa4128e Make the private op queue work with nested calls to poll() or poll_one(). 2011-10-04 22:07:40 +11:00
Christopher Kohlhoff
9a66b5bf5e Fix usage of deprecated (and soon to be removed) header. 2011-10-04 08:58:59 +11:00
Christopher Kohlhoff
2f1bdd0248 Optimise creation of and access to the io_service implementation. 2011-10-02 13:00:44 +11:00
Christopher Kohlhoff
5cde1b2404 Always pass a private op_queue, even if it isn't used. 2011-09-29 09:22:16 +10:00
Christopher Kohlhoff
8ee5ba2afd Pass error_code value through to each operation's complete function. 2011-09-29 09:22:16 +10:00
Christopher Kohlhoff
35ba6bebba Tidy up epoll_reactor code. 2011-09-28 08:52:12 +10:00
Christopher Kohlhoff
393691874c Fix for excessive CPU consumption by epoll_reactor when multiple threads run the io_service. 2011-09-28 00:14:23 +10:00
Christopher Kohlhoff
326c45b2a0 Split run and poll code to improve performance. 2011-09-26 22:44:54 +10:00
Christopher Kohlhoff
664cf6a4ec Minor performance tweaks. 2011-09-26 22:44:40 +10:00
Christopher Kohlhoff
aa2ce160ec Add allocator header. 2011-09-26 21:44:32 +10:00
Christopher Kohlhoff
72b20e6bbb Specify concurrency hint. 2011-09-26 21:43:32 +10:00
Christopher Kohlhoff
82925d76c0 Add custom memory allocation to udp latency server. 2011-09-26 19:31:13 +10:00
Christopher Kohlhoff
aa8680aed9 Specialise the async_write_at implementation for buffer sequences based on a
boost::array or std::array of two elements.
2011-09-21 23:07:19 +10:00
Christopher Kohlhoff
629c73934b Specialise the async_read_at implementation for buffer sequences based on a
boost::array or std::array of two elements.
2011-09-21 19:15:49 +10:00
Christopher Kohlhoff
ace36f3703 Specialise the async_write implementation for buffer sequences based on a
boost::array or std::array of two elements.
2011-09-21 10:00:07 +10:00
Christopher Kohlhoff
018788a93a Add new header file. 2011-09-20 23:30:19 +10:00
Christopher Kohlhoff
9fea137d6b Specialise the async_read implementation for buffer sequences based on a
boost::array or std::array of two elements.
2011-09-20 23:28:30 +10:00
Christopher Kohlhoff
54e5dcc4cb Use separate test cases for buffer sequences based on boost::array, std:array and std::vector. 2011-09-20 23:17:15 +10:00
Christopher Kohlhoff
ebfd01ea33 Specialise buffer_sequence_adapter for arrays of 2 elements. 2011-09-18 21:02:20 +10:00
Christopher Kohlhoff
433c7bfb89 Set size of select fd_set at runtime when using Windows. 2011-09-17 15:53:16 +10:00
Christopher Kohlhoff
70a6b177df Fix forcing-to-bool warning. 2011-09-17 11:50:56 +10:00
Christopher Kohlhoff
b6807aa30e Disable warning due to const qualifier being applied to function type. 2011-09-17 11:50:34 +10:00
Christopher Kohlhoff
23e768d693 Make sure the synchronous null_buffers operations obey the user's non_blocking setting. 2011-09-14 21:06:27 +10:00
Christopher Kohlhoff
f6c7cb11c4 Change the SSL buffer sizes so that they're large enough to hold a complete TLS record. 2011-09-14 09:51:15 +10:00
Christopher Kohlhoff
0d581d46f1 Use a plain ol' long for atomic_count when ASIO_DISABLE_THREADS is defined. 2011-09-13 21:57:35 +10:00
Christopher Kohlhoff
b24af8afdc Prefer x86-specific fenced block implementation of the one that uses gcc intrinsics. 2011-09-13 21:52:21 +10:00
Christopher Kohlhoff
ed55d043e2 Only fence block exit when a handler is being run directly out of the io_service. 2011-09-13 19:16:06 +10:00
Christopher Kohlhoff
63d158e188 Don't access the operation queues outside the lock. 2011-09-13 09:22:27 +10:00
Christopher Kohlhoff
3652568dcb Use thread-local operation queues in single-threaded use cases to
eliminate a lock/unlock pair.
2011-09-13 08:26:18 +10:00
Christopher Kohlhoff
61dff2be52 Improve locality of reference by performing the I/O operation
immediately before the corresponding handler is called.
2011-09-12 23:29:37 +10:00
Christopher Kohlhoff
c0d2acd353 Allow some speculative operations to be performed without holding the lock. 2011-09-12 21:12:46 +10:00
Christopher Kohlhoff
19c8767bb0 Don't read the clock unless the heap is non-empty. 2011-09-12 20:48:32 +10:00
Christopher Kohlhoff
feaa79c882 Change assembly code in gcc_x86_fenced_block to fix crash when using the Intel C++ compiler. 2011-09-12 20:23:01 +10:00
Christopher Kohlhoff
4bf858c5ee Explicitly specify the signal() function from the global namespace. 2011-09-12 19:14:15 +10:00