Commit Graph

102 Commits

Author SHA1 Message Date
Oliver Kowalke
fc73bdfc52 merge examples echo_client+echo_server into one application 2016-02-29 19:00:42 +01:00
Oliver Kowalke
d1430e395b change asio/echo example 2016-02-28 20:24:12 +01:00
Oliver Kowalke
e43cf5b1ac enum for context types 2016-02-15 19:49:22 +01:00
Oliver Kowalke
6567fde460 add initializer brackets to yeld in example 2016-02-02 17:07:01 +01:00
Oliver Kowalke
1ace8bbb36 make async_result::get() an interruption point 2016-01-31 18:14:24 +01:00
Oliver Kowalke
3ac9dde4d0 update asio integration example 2016-01-31 16:48:04 +01:00
Oliver Kowalke
284bdf6f78 fix asio integration - skip promise_handler 2016-01-31 16:14:14 +01:00
Oliver Kowalke
62b2a52857 some fixes for asio integration - promise problematic 2016-01-31 11:00:08 +01:00
Oliver Kowalke
51f4cb1a26 update asio integration in directory examples 2016-01-29 17:04:15 +01:00
Oliver Kowalke
3cfe41c01e fix asio/round_robin.hpp
block thread only in io_service::rune_one() if no fibers ready
2016-01-26 11:54:27 +01:00
Oliver Kowalke
dd661d4e5d attempt of better integration with asio 2016-01-25 21:48:18 +01:00
Oliver Kowalke
6034c1b09b reenable Nat's promise_handler impl 2015-12-05 15:14:54 +01:00
Oliver Kowalke
726d4d51b9 ++14 polishing 2015-12-01 21:07:11 +01:00
Oliver Kowalke
edd439233a fixups for asio examples 2015-10-17 14:41:53 +02:00
Oliver Kowalke
5345d810a8 asio: executed dummy fiber after sleep-timer expires 2015-10-14 13:43:14 +02:00
Oliver Kowalke
b032457397 asio examples added 2015-10-10 21:50:22 +02:00
Oliver Kowalke
ae67ee1694 asio's spawn() 2015-10-05 19:23:16 +02:00
Oliver Kowalke
5d71a4f8cd asio examples 2015-10-04 20:08:21 +02:00
Oliver Kowalke
253d981f52 examples added 2015-09-29 17:55:46 +02:00
Oliver Kowalke
eafeaaae01 remove examples and tests 2015-09-16 19:12:57 +02:00
Oliver Kowalke
2cd1d39f12 fix clang compiler error regarding missing typename 2015-09-08 18:58:36 +02:00
Nat Goodspeed
bcdb555821 Use std::shared_ptr and std::make_shared for promise_handler.
Publish promise_handler::promise_ptr and use it in asio_handler_invoke() for
consistency.
2015-09-03 08:47:25 -04:00
Oliver Kowalke
fefffd37eb update documentation 2015-09-01 17:17:38 +02:00
Nat Goodspeed
0f7b6ae71c Add notes that echo_client.cpp and echo_client2.cpp are borrowed from asio.
The casual reader, on encountering these in the Fiber examples directory,
might otherwise assume they're intended to illustrate something about the
Fiber library.
2015-08-25 13:07:35 -04:00
Oliver Kowalke
73d38028c4 code re-formating of asio examples 2015-08-24 20:08:56 +02:00
Nat Goodspeed
1e3e2b8887 Add callbacks.qbk about interfacing Fiber with async callbacks.
This covers both generic callbacks (adapt_callbacks.cpp,
adapt_method_calls.cpp) and custom Asio completion tokens (yield.hpp,
promise_completion_token.hpp, detail/yield.hpp, detail/promise_handler.hpp).
Mark up the relevant source files to provide code snippets for callbacks.qbk.
2015-08-24 09:28:16 -04:00
Nat Goodspeed
f3213aae54 use_future.hpp and yield.hpp no longer need handler_invoke_hook.hpp. 2015-08-22 14:43:16 -04:00
Nat Goodspeed
53d4f4b166 Reimplement boost::fibers::asio::yield with promise/future.
In essence, yield_t et al. become very like use_future_t et al. The only real
difference is the async_result return type and get() method. Factor out common
functionality into promise_completion_token and promise_handler.

Remove the boost::fibers::asio::spawn() function and its basic_yield_context
infrastructure. Fix up all existing references in example source code.
2015-08-22 14:22:20 -04:00
Nat Goodspeed
99db8d50a8 Add section about integration with another main loop.
Asio integration may be a much larger topic, per email.
2015-08-19 06:18:08 -04:00
Oliver Kowalke
2855e5128a fix asio stuff 2015-08-18 17:46:14 +02:00
Oliver Kowalke
ec2d9c6021 add asio examples 2015-02-12 16:29:01 +01:00
Oliver Kowalke
ee0b84240d remove asio examples 2015-02-10 18:45:26 +01:00
Oliver Kowalke
8cfec6deed some fixes for asio exmaples - not compiling 2015-02-10 18:40:40 +01:00
Oliver Kowalke
e9e8ec1b85 fix examples 2014-12-27 21:17:13 +01:00
Oliver Kowalke
2f19be6d67 use C++11 2014-12-27 19:07:42 +01:00
Oliver Kowalke
22850775ca variadric tempalte args 2014-07-15 20:33:14 +02:00
Oliver Kowalke
7ef6302f86 arbitrary clock::time_point conforming to chrono clock concept allowed 2014-07-08 17:41:59 +02:00
Oliver Kowalke
b936512136 remove mutex::scoped_lock by unique_lock< mutex > 2014-06-29 13:31:01 +02:00
Oliver Kowalke
7116c7ff03 use fm_<xyz> functions in asio intregration files 2014-06-29 13:30:40 +02:00
Oliver Kowalke
e031ba4762 move asio-stuff to example section 2014-03-24 19:14:38 +01:00
Oliver Kowalke
ab91ab52b8 changes for boost.asio 2014-03-23 18:20:15 +01:00
olk
552c175be1 add some comments to publish-subscibe example 2014-01-07 08:46:26 +01:00
Mario Lang
d471d7133d Fix some typos. 2013-12-29 14:00:36 +01:00
Oliver Kowalke
98f54ad0e4 rename fibers::asio::io_service -> fibers::asio::round_robin 2013-10-24 18:42:07 +02:00
Oliver Kowalke
32405f7a99 add asio example demonstaratiing sync. of fibers 2013-09-11 09:27:27 +02:00
Oliver Kowalke
00ec9d32a3 update 2013-08-28 21:57:14 +02:00
Oliver Kowalke
11eb0c6082 add boost.asio spawn() for fibers 2013-06-19 18:03:48 +02:00
Oliver Kowalke
9d58afd3ec add some examples using boost.asio async_result 2013-06-16 16:19:24 +02:00
Oliver Kowalke
de3bc64e4f boost.asio related stuff (fiber-aware io_servic etc.) 2013-06-14 20:37:47 +02:00
Oliver Kowalke
04ddde32f1 refactor of support of boost.asio async_result (use_future_t) 2013-06-13 17:39:03 +02:00
Oliver Kowalke
1e248b0216 require to set scheduler for each os-thread 2012-12-17 19:54:34 +01:00
Oliver Kowalke
81e62e8962 changed directory structure as required by modularized-boost 2012-12-09 15:22:59 +01:00