Christopher Kohlhoff
9995748ebc
Remove deprecated file 'asio/impl/src.cpp'.
2021-01-16 10:14:17 +11:00
Christopher Kohlhoff
77ed33821d
Add std::hash specialisations for ip::basic_endpoint<>.
2021-01-09 11:03:52 +11:00
Christopher Kohlhoff
0407653764
Add std::hash specialisations for IP addresses.
2021-01-09 11:03:52 +11:00
Christopher Kohlhoff
54269864e6
Add ip::port_type type alias.
2021-01-09 11:03:52 +11:00
Christopher Kohlhoff
d87b482c34
Add ip::scope_id_type type alias.
2021-01-09 11:03:52 +11:00
Pavel A. Lebedev
00d6e4ccca
Fix outstanding_work.tracked executor move assignment.
...
Move assignments for io_context and thread pool executors are missing
the logic present in copy assignments that finishes work on old contexts.
This causes the following example to hang:
#include <boost/asio/execution/outstanding_work.hpp>
#include <boost/asio/prefer.hpp>
#include <boost/asio/static_thread_pool.hpp>
int main()
{
asio::static_thread_pool tp1{1},tp2{1};
{
auto work = asio::prefer(tp1.get_executor(),
asio::execution::outstanding_work.tracked);
work = asio::prefer(tp2.get_executor(),
asio::execution::outstanding_work.tracked);
}
tp1.join();
tp2.join();
}
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
5f39960dd9
Make the thread_pool executor's execute, require, and query members private.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
ae0f7878bb
Make system_executor's execute, require, and query members private.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
b88b70a49f
Make the io_context executor's execute, require, and query functions private.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
171328a6cb
Add friendship support to execution::occupancy property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
3c55c553d1
Add friendship support to execution::context_as property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
40ab600042
Add friendship support to execution::context property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
27ce053e07
Add friendship support to execution::allocator property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
e704307b2a
Add friendship support to execution::relationship property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
d6ec314dec
Add friendship support to execution::outstanding_work property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
403f559d2c
Add friendship support to execution::mapping property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
c541383336
Add friendship support to execution::bulk_guarantee property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
0106229b7e
Add friendship support to execution::blocking_adaptation property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
55df45012d
Add friendship support to execution::blocking property.
2021-01-07 19:37:26 +11:00
Christopher Kohlhoff
962a85f7f5
Add friendship support to require_concept CPO.
2021-01-06 13:00:17 +11:00
Christopher Kohlhoff
a3992b6d8e
Add friendship support to prefer CPO.
2021-01-06 12:04:24 +11:00
Christopher Kohlhoff
11f7ae1fab
Add friendship support to require CPO.
2021-01-06 11:56:12 +11:00
Christopher Kohlhoff
9fb71891e1
Add friendship support to query CPO.
2021-01-06 11:43:32 +11:00
Christopher Kohlhoff
359632d9ae
Add friendship support to execution::execute CPO.
2021-01-06 11:42:48 +11:00
Simon Arlott
b239979692
Don't overwrite errno if socket() fails on macOS/FreeBSD.
2021-01-05 19:14:33 +11:00
Christopher Kohlhoff
fedb31ebb2
Clarify thread safety notes on sockets and descriptors.
2021-01-05 10:56:14 +11:00
Christopher Kohlhoff
da1cf294d9
Ensure pthread condition variable attributes are cleaned up.
2021-01-05 09:33:10 +11:00
Christopher Kohlhoff
ce9e7d999a
Update copyright notices.
2021-01-02 09:49:44 +11:00
Christopher Kohlhoff
180bc40ea0
Fix experimental::as_single to work with handler hook deprecation.
2020-12-29 18:52:06 +11:00
Christopher Kohlhoff
439448326c
Don't prefer() an allocator when dispatching through any_executor.
2020-12-29 18:36:27 +11:00
Christopher Kohlhoff
d2e5d9a5e4
Distinguish constructor overloads by number of arguments.
...
Single argument constructors with SFINAE constraints were causing
unnecessary template instantiations during overload resolution.
Adding dummy arguments prevents this from happening.
2020-12-29 18:36:27 +11:00
Christopher Kohlhoff
13281c560b
Use separate SFINAE parameters to minimise template instantiations.
2020-12-29 18:36:27 +11:00
Christopher Kohlhoff
3189f29ad7
Short circuit property applicability checks after is_executor<>.
2020-12-29 18:36:06 +11:00
Christopher Kohlhoff
7377f941cc
Add missing inline keyword in MSVC-specific workaround.
...
Fixes duplicate symbols when building with coroutine support.
2020-12-29 18:36:06 +11:00
Christopher Kohlhoff
937bf82d92
Add clang 3.8 builds.
2020-12-29 18:36:06 +11:00
Christopher Kohlhoff
b0f219ea42
Use github actions instead of travis for CI.
2020-12-29 14:36:06 +11:00
Christopher Kohlhoff
b84e6c16b2
asio version 1.18.1 released
2020-12-26 13:25:45 +11:00
Christopher Kohlhoff
80d487bbde
Revision history.
2020-12-26 12:20:27 +11:00
Christopher Kohlhoff
6e75b35cdf
Add missing SFINAE constraint to strand<>'s execute_member trait.
2020-12-03 09:24:32 +11:00
Christopher Kohlhoff
c0cadce4bb
Remove link to defunct example.
2020-11-29 16:43:15 +11:00
Christopher Kohlhoff
610fd036c0
The -Wzero-as-null-pointer-constant warning was added in gcc 4.7.
2020-11-29 16:43:15 +11:00
Christopher Kohlhoff
c4ad07e86e
Use eventfd() function with uClibc.
...
Even though uClibc reports that it is glibc 2.2, it provides
eventfd() as a function.
2020-11-29 16:43:06 +11:00
Christopher Kohlhoff
c99ad00f70
Update list of tested configurations.
2020-11-29 14:14:15 +11:00
Christopher Kohlhoff
4a109995da
Add detection for non-experimental coroutines with MSVC 19.8 and later.
2020-11-29 14:04:02 +11:00
Christopher Kohlhoff
971458d91b
Add documentation for more configuration macros.
2020-11-29 14:04:02 +11:00
Kira M. Backes
82887fe49f
Improve build doc discoverability
2020-11-29 11:40:42 +11:00
Christopher Kohlhoff
4a2c74ee0b
Add auto-generated documentation for compiler/platform feature macros.
2020-11-29 11:35:42 +11:00
Christopher Kohlhoff
5fb2ea03ac
Add compatibility between polymorphic executors and the (deprecated) handler invocation hook.
2020-11-02 14:00:33 +11:00
Christopher Kohlhoff
a8e4084431
More support for detecting handlers that have no custom executor.
2020-11-02 14:00:33 +11:00
Christopher Kohlhoff
525c4203aa
Add workarounds for the Intel C++ compiler.
2020-11-02 14:00:33 +11:00