1. 01 2月, 2019 1 次提交
  2. 16 1月, 2019 1 次提交
  3. 12 1月, 2019 1 次提交
  4. 06 1月, 2019 1 次提交
  5. 02 1月, 2019 1 次提交
  6. 30 12月, 2018 1 次提交
    • Y
      1.3.4 release. · e4be5094
      youngwolf 提交于
      A container holding messages that were failed to send will be provided via on_send_error virtual function.
      Failure of binding or listening in server_base will not stop the service_pump any more.
      Virtual function client_socket_base::prepare_reconnect() now only control the retry times and delay time after reconnecting failed.
      Expose server_base's acceptor via next_layer().
      Prefix suffix packer and unpacker support heartbeat.
      New demo socket_management demonstrates how to manage sockets if you use other keys rather than the original id.
      Control reconnecting more flexibly, see function client_socket_base::open_reconnect and client_socket_base::close_reconnect for more details.
      e4be5094
  7. 21 12月, 2018 1 次提交
  8. 12 11月, 2018 1 次提交
  9. 23 10月, 2018 1 次提交
  10. 12 10月, 2018 1 次提交
  11. 05 10月, 2018 2 次提交
  12. 01 10月, 2018 1 次提交
    • Y
      1.3.3 release. · d4d8c75e
      youngwolf 提交于
      Fix spurious awakenings when doing sync message sending and receiving.
      Fix statistics for batch message dispatching.
      Support sync message dispatching, it's like previous on_msg(), see macro ASCS_SYNC_DISPATCH for more details.
      Support timed waiting when doing sync message sending and receiving (timeout doesn't mean failure, please note).
      Add virtual function find_socket to interface i_server.
      Dummy empty messages will not be returned from sync_recv_msg().
      sync_recv_msg() will just append new messages to msg_can instead of replacing all messages in msg_can with new messages.
      d4d8c75e
  13. 23 8月, 2018 1 次提交
    • Y
      Fix bug in demo file_client: · 3365409e
      YangLi 提交于
      If failed to transfer the previous file, all next files will not be transferred anymore.
      3365409e
  14. 22 8月, 2018 1 次提交
  15. 21 8月, 2018 2 次提交
    • Y
      afbc60e6
    • Y
      1.3.2 release. · 32aba299
      youngwolf 提交于
      Fully support sync message sending and receiving.
      Unify ascs::tcp::i_unpacker and ascs::udp::i_unpacker (the latter obey the former).
      Simplify statistic::to_string().
      Fix race condition when aligning timers.
      Fix error check for UDP on cygwin and mingw.
      Fix bug: demo file_client may not be able to receive all content of the file it required if you get more than one file in a single request.
      Fix compilation warning in class udp::socket_base with macro ASCS_PASSIVE_RECV.
      32aba299
  16. 07 8月, 2018 1 次提交
  17. 01 8月, 2018 1 次提交
    • Y
      1.3.1 release. · 69faa009
      YangLi 提交于
      Support Cygwin and Mingw.
      Dynamically allocate timers when needed (multithreading releated behaviors kept as before).
      Sharply reduced the memory occupation of timers.
      Expand the range of timer ID from [0, 256) to [0, 65536).
      Add new macro ASCS_ALIGNED_TIMER to align timers.
      Realign member variables to save a few memory.
      Amend doc.
      Supplement English docs.
      Avoid chinese file names.
      Simplified config.mk
      Make demos easier to use.
      Optimize file_server and file_client.
      Supplement _LARGEFILE_SOURCE definition for file_server and file_client.
      69faa009
  18. 30 5月, 2018 1 次提交
  19. 23 5月, 2018 1 次提交
  20. 21 5月, 2018 1 次提交
    • Y
      1.3.0 release. · 9b4751e2
      youngowlf 提交于
      Wiped race condition between async_read and async_write on the same ascs::socket.
      Fix bug: the hook for asynchronous calling cannot work properly with low compilers.
      Call on_unpack_error before the next message receiving.
      
      Support batch messages dispatching.
      Force to use receiving buffer.
      Support empty receiving.
      Simplify ascs::list.
      Class object has been split into executor and tracked_executor, object_pool use the former, and ascs::socket use the latter.
      Generalize function send_msg, send_native_msg, safe_send_msg, safe_send_native_msg, broadcast_msg, broadcast_native_msg, safe_broadcast_msg and safe_broadcast_native_msg.
      
      Drop macro ASCS_SEND_BUFFER_TYPE, it's useless.
      9b4751e2
  21. 27 4月, 2018 1 次提交
  22. 26 4月, 2018 17 次提交
    • Y
      1.2.6 release. · 7b42c4b5
      youngwolf 提交于
      Fix: Reconnectiong may happen in ascs::socket::reset, it's not a right behavior.
      Do reconnecting in client_socket_base::after_close rather in client_socket_base::on_close.
      7b42c4b5
    • Y
      1.2.5 release. · 4b5ad024
      youngowlf 提交于
      Fix:
      Support unmovable buffers (for example: a very short std::string).
      begin_time not inherited while accessing concurrent queue.
      Eliminate race condition in udp::socket_base.
      Eliminate race condition in demo file_client.
      Avoid division by zero error in demo file_client.
      4b5ad024
    • Y
      Fix UDP heartbeat. · 8b3a1c45
      youngwolf 提交于
      8b3a1c45
    • Y
      1.2.4 release. · fd6c9977
      youngwolf 提交于
      fd6c9977
    • Y
      1.2.3 release. · 01d43fe5
      youngwolf 提交于
      Support decreasing the number of service thread at runtime.
      Not support Visual C++ 11.0 (2012) any more, use st_asio_wrapper instead.
      Optimized and simplified auto_buffer, shared_buffer and ext::basic_buffer.
      Optimized class obj_with_begin_time.
      Not use sending buffer (send_msg_buffer) if possible.
      Reduced stopped() invocation (because it needs locks).
      Introduced asio::io_service::work (asio::executor_work_guard).
      i_server has been moved from ascs to ascs::tcp.
      Move all deprecated classes (connector_base, client_base, service_base) to alias.h
      Rename tcp::client_base to tcp::multi_client_base, ext::tcp::client to ext::tcp::multi_client, udp::service_base to udp::multi_service_base,
       ext::udp::service to ext::udp::multi_service. Old ones are still available, but have became alias.
      01d43fe5
    • Y
      1.2.2 release. · 42cfca74
      youngwolf 提交于
      Support unstripped message.
      Add two demos for concurrent test.
      define ASIO_NO_DEPRECATED macro by default in VC++ projects.
      Truly support asio 1.11 (don't use deprecated functions and classes any more), and of course, asio 1.10 will be supported too.
      Use mutable_buffer and const_buffer instead of mutable_buffers_1 and const_buffers_1 if possible.
      42cfca74
    • Y
      1.2.1 release. · e6f90e40
      youngowlf 提交于
      Fix race condition on member variable last_send_msg in tcp::socket_base.
      Optimize reconnecting mechanism.
      Enhance class timer.
      Rename connector_base and ssl::connector_base to client_socket_base and ssl::client_socket_base, the former is still available, but is just an alias.
      e6f90e40
    • W
      Make reconnecting after all async invocations (like object reusing or restoration). · 73513d5c
      wolf 提交于
      Drop virtual function socket::is_closable.
      73513d5c
    • Y
      1.2.0 release. · 75fa186f
      youngwolf 提交于
      Support object restoration (on server side).
      Re-implement heartbeat function, use user data instead of OOB.
      Refactor and optimize ssl object, now ssl::commector_base and ssl::server_socket_base are reuable.
      
      Not compatible with old versions, please note.
      See config.h for more details about this release.
      75fa186f
    • Y
      prefix_suffix packer and unpacker satisfy asio 1.11 · e2e5d4b7
      youngwolf 提交于
      e2e5d4b7
    • Y
      Continue last commit. · a68f14ea
      youngwolf 提交于
      a68f14ea
    • Y
      Continue last commit. · 5d2c7d2d
      youngwolf 提交于
      5d2c7d2d
    • Y
      Make echo_client easier to use. · 056685a2
      youngwolf 提交于
      Support asio 1.11.x
      056685a2
    • Y
      Make the s variable of ascs::list volatile. · 7fbe77a4
      youngwolf 提交于
      7fbe77a4
    • W
      Disable heartbeat by default. · 7bf5fe20
      wolf 提交于
      Sync doc.
      Version number keeps unchanged.
      7bf5fe20
    • Y
      1.1.5 release. · 6251fb2d
      youngowlf 提交于
      Support heartbeat (via OOB data), see ASCS_HEARTBEAT_INTERVAL macro for more details.
      Support scatter-gather buffers when receiving messages, this feature needs modification of i_unpacker, you must explicitly define
       ASCS_SCATTERED_RECV_BUFFER macro to open it, this is just for compatibility.
      Simplify lock-free mechanism and use std::atomic_flag instead of std::atomic_size_t.
      Optimize container insertion (use series of emplace functions instead).
      Demo echo_client support alterable number of sending thread (before, it's a hard code 16).
      Fix bug: In extreme cases, messages may get starved in receive buffer and will not be dispatched until arrival of next message.
      Fix bug: In extreme cases, messages may get starved in send buffer and will not be sent until arrival of next message.
      Fix bug: Sometimes, connector_base cannot reconnect to the server after link broken.
      
      known issues:
      1. heartbeat mechanism cannot work properly between windows (at least win-10) and Ubuntu (at least Ubuntu-16.04).
      6251fb2d
    • Y
      1.1.4 release. · e3a9f3f0
      youngwolf 提交于
      Drop unnecessary macro definition (ASIO_HAS_STD_CHRONO).
      Simplify header files' dependence.
      Add Visual C++ solution and project files (Visuall C++ 14.0).
      Monitor time consumptions for message packing and unpacking.
      Fix bug: pop_first_pending_send_msg and pop_first_pending_recv_msg cannot work.
      e3a9f3f0