Commit Graph

406 Commits

Author SHA1 Message Date
zhengshuxin
49d4f2d5ce The fiber module has supported shared stack mode to decrease memory usage for many cocurrent clients. 2022-03-30 19:11:25 +08:00
zhengshuxin
9ace98a715 test fiber event 2022-03-26 14:18:31 +08:00
zhengshuxin
4da53a2d6d optimize epoll.c for hooking system API in fiber module. 2022-03-23 16:00:31 +08:00
zhengshuxin
e1c6f218de add one test demo 2022-03-23 10:07:10 +08:00
zhengshuxin
48a57a5abe optimize the process that closing one fd from another fiber 2022-03-03 12:42:01 +08:00
郑树新
1801603682 add project for demo fiber_tbox on windows 2022-02-24 23:05:43 +08:00
郑树新
1921afab07 test fiber_tbox on windows 2022-02-24 23:03:10 +08:00
zhengshuxin
0fe52cf465 test setting timeout by setsockopt in fiber module 2022-02-20 23:44:30 +08:00
zhengshuxin
d4a829102f test fiber 2022-02-16 18:16:58 +08:00
zhengshuxin
8d7cf5cdfc build samples ok on WSL ubuntu 2022-01-28 12:28:21 +08:00
root
edf0b72aa3 porting to Alpine Linux ok 2022-01-27 19:37:10 +00:00
郑树新
de77ff891c optimize and test iocp 2022-01-26 18:08:55 +08:00
shuxin   zheng
a5416395ed test SO_RCVTIMEO in fiber mode 2022-01-21 21:41:28 +08:00
zhengshuxin
b8ab3c87bb test 2022-01-21 18:30:13 +08:00
zhengshuxin
16b2a60d20 fixed bugs that the connecting timeout process isn't available in fiber mode 2022-01-21 17:31:50 +08:00
zhengshuxin
e516804b78 fixed one bug in acl_fiber_delay() that the event loops too quickly for the event waiting timeout been set 0. 2021-11-23 17:40:37 +08:00
郑树新
310a87f844 optimize vs projects for windows platform 2021-09-17 00:11:06 +08:00
郑树新
cde03a74d4 optimize vs projects 2021-09-16 19:27:09 +08:00
郑树新
e9ea53d74b the thread fiber should be checked when stopping fiber schedule 2021-09-06 22:44:20 +08:00
郑树新
a4fb983866 test fiber for Win GUI 2021-09-06 16:50:23 +08:00
郑树新
a6f2e61d8c test fiber_tbox for win GUI ok 2021-09-05 23:29:29 +08:00
郑树新
e0601e582f test some fiber module on windows 2021-08-23 18:41:23 +08:00
郑树新
ff71cebfae test fiber on windows 2021-08-23 11:21:59 +08:00
郑树新
9d3f6d5cfd test API hook for fiber module on Windows platform. 2021-08-22 23:15:38 +08:00
郑树新
227a958fd8 add lost project files 2021-08-19 23:40:20 +08:00
郑树新
04aaede734 optimize fiber module by hooking system API on windows 2021-08-19 21:45:41 +08:00
郑树新
2d04980910 optimizing fiber module 2021-08-18 16:07:35 +08:00
zhengshuxin
d0b031f3b6 test keep-alive of http module 2021-07-13 16:17:28 +08:00
zhengshuxin
165d327357 fixed some compiling warning when some modules were disabled. 2021-02-07 09:54:45 +08:00
zhengshuxin
a3db7f9466 add one sample for testing fiber 2021-02-05 23:39:02 +08:00
zhengshuxin
96c35cabb3 test fiber demo 2021-02-02 16:45:16 +08:00
zhengshuxin
b63287774d support read/write timeout by setsockopt in libfiber 2021-01-30 09:11:39 +08:00
zhengshuxin
6b7ae7b883 the socket of one fiber can be closed of another fiber 2021-01-29 13:34:57 +08:00
zhengshuxin
f927b4d736 fiber sem & lock can also be killed by another fiber 2021-01-28 14:58:48 +08:00
zhengshuxin
28feaf3c28 add demos for testing close operation in the other fiber 2021-01-28 14:14:29 +08:00
zhengshuxin
684e1e445e test redis_pipeline 2021-01-09 10:48:53 +08:00
shuxin   zheng
f746ee9b6d acl redis_pipeline module is ok 2021-01-08 14:35:25 +08:00
shuxin   zheng
ab2d78efaf optimize redis_pipeline 2021-01-07 16:35:12 +08:00
zhengshuxin
d811990ade optimize redis_pipeline 2021-01-06 10:07:31 +08:00
zhengshuxin
ebc4adb376 optimize and test redis_pipeline module 2021-01-05 15:42:25 +08:00
zhengshuxin
52181516f3 test redis_pipeline mode 2021-01-03 23:00:24 +08:00
zhengshuxin
d284f41e66 modify redis sample 2021-01-03 18:58:26 +08:00
zhengshuxin
4454e974f0 modify sample for testing redis in fiber mode 2021-01-03 18:03:58 +08:00
zhengshuxin
6554585b29 optimize redis_pipeline 2021-01-02 20:48:36 +08:00
zhengshuxin
f15e6718f0 add one sample for testing redis_pipeline in fiber mode 2021-01-01 21:41:55 +08:00
shuxin   zheng
ea531338d6 format code style 2020-11-05 15:16:35 +08:00
shuxin   zheng
9c853ab7f8 fixed bug in one test demo for testing fiber dns module. 2020-11-01 20:21:21 +08:00
shuxin   zheng
d2ed2e8b29 test building reply package by rfc1035 module 2020-10-24 14:28:15 +08:00
zhengshuxin
c21cc6c733 test dns module 2020-10-24 10:59:00 +08:00
zhengshuxin
845338db4a test dns module 2020-10-23 17:47:50 +08:00
shuxin   zheng
0dd378e35d add dns test benchmark 2020-10-23 15:26:11 +08:00
zhengshuxin
752f5b6de3 fixed bug in demo 2020-10-22 16:00:28 +08:00
zhengshuxin
ce7c7c093a fixed bug in fiber dns module 2020-10-22 15:02:58 +08:00
shuxin   zheng
593fb7693d test fiber and dns 2020-10-22 10:59:12 +08:00
shuxin   zheng
7e89735ac1 dns module has been ready! 2020-10-21 15:48:40 +08:00
shuxin   zheng
72bb6b909d restore fiber 2020-10-08 17:17:21 +08:00
shuxin   zheng
a1383bf620 test fiber 2020-10-08 15:15:33 +08:00
shuxin   zheng
17adcd823e add fiber demo for IOS 2020-09-26 23:14:11 +08:00
shuxin   zheng
24124b87e7 format code, replace "\n" with "\r\n" for all source files. 2020-08-21 14:55:03 +08:00
zhengshuxin
d800ca468e use MD compiling options for all vc projects 2020-08-06 15:42:37 +08:00
郑树新
a6976962cd fixed compiling error by vc2012 2020-07-26 16:28:16 +08:00
shuxin   zheng
6e7ddc42d3 add "acl_" prefix for some ".c" files to avoid compiling warning for same files collision. 2020-07-22 17:50:56 +08:00
zhengshuxin
8995284180 test redis pipeline 2020-07-20 22:41:40 +08:00
zhengshuxin
88c756a462 fixed compiling error for samples with ssl 2020-07-16 09:12:39 +08:00
shuxin   zheng
41ef6fef8f use remote_addr@local_addr replacing the old format: local_addr@remote_addr 2020-06-27 14:01:13 +08:00
shuxin   zheng
27c8892cec test http server 2020-06-26 21:45:51 +08:00
shuxin   zheng
83ba45c98a optimize go fiber api for c++11 2020-06-13 14:33:08 +08:00
shuxin   zheng
4e2ddf3aa1 test demo of fiber for resolving dns 2020-05-05 00:29:38 +08:00
shuxin   zheng
a8e7eabe05 modify readme for fiber module 2020-03-26 11:56:57 +08:00
shuxin   zheng
15ba8bf57e test http_thread 2020-03-23 22:33:34 +08:00
shuxin   zheng
d87b1c4e64 add test sample http_request_manager for testing fiber and connect_manager. 2020-03-14 20:52:16 +08:00
shuxin   zheng
95883c415f fixed compiling waring on MacOS 2020-02-15 19:26:41 +08:00
zhengshuxin
cf6aab9e9b test fiber in reactor way 2020-02-09 21:50:37 +08:00
shuxin   zheng
f4c063ebc3 test fiber in reactor way 2020-02-09 20:45:17 +08:00
zhengshuxin
dee7833d1d fixed bugs in hook/epoll.c in fiber module for memory overflow 2020-01-25 17:57:00 +08:00
zhengshuxin
4321cfc6c2 add one fiber demo 2020-01-25 14:45:24 +08:00
shuxin   zheng
4a7dce51ba acl::mbedtls_conf can load three mbedtls dynamic libs 2020-01-06 15:29:03 +08:00
shuxin   zheng
1222309a1d test fiber demos with ssl 2020-01-05 20:23:34 +08:00
zsxxsz
51b1789300 optimize WinEchod sample 2019-08-18 13:10:26 +08:00
zsxxsz
2ee35f6434 fixed bugs for restarting fiber IO scheduling. 2019-08-17 22:07:51 +08:00
root
72a5287da5 add memory using debug info. 2019-08-16 18:17:11 +08:00
zhengshuxin
946bc1944e use conditional compiling for hooking system API getimeofday 2019-08-12 14:52:09 +08:00
zhengshuxin
0ee5867c9d add one sample for testging gettimeofday 2019-07-31 16:31:36 +08:00
zhengshuxin
b02dfd34c6 speedup gettimeofday() by using some asm codes from DPDK 2019-07-30 23:48:25 +08:00
zhengshuxin
9697f95b8f Revert "All source code have been changed to use utf8 charset with BOM header!"
This reverts commit 15d999759e.
2019-07-28 10:31:56 +08:00
zsxxsz
15d999759e All source code have been changed to use utf8 charset with BOM header! 2019-07-27 22:44:32 +08:00
郑树新
649b94dc41 format source code's charset 2019-07-26 17:27:39 +08:00
zhengshuxin
d62bb45cd6 tcp_keeper: fixed one bug in keeper_conn.cpp;
server_socket: remove one constructur method;
2019-04-28 16:17:17 +08:00
zhengshuxin
82110b5dbd modify samples 2019-03-18 17:03:23 +08:00
zsx
b926d78534 optimize tcp_keeper 2019-01-17 14:10:59 +08:00
zsx
db2d293a3e tcp_keeper is ok! 2019-01-15 11:57:19 +08:00
zsx
03e2cf0a31 optimize tcp_keeper 2018-12-31 22:02:21 +08:00
zsx
5bb7daf807 tcp_keeper: add ttl controling for connection and connections pools;
http_request/http_client add controling parameters
2018-12-29 15:42:03 +08:00
zsx
ea8462f1ef add tcp_keeper class for tcp connections keepalive 2018-12-28 21:46:01 +08:00
zsx
7ab0b6f5e3 fixed bugs in acl_fiber_cond_wait/acl_fiber_cond_timedwait that detaching fbase must before calling acl_fiber_event_wait 2018-12-27 10:07:14 +08:00
zsx
e2fbff2b9b add fiber_tbox sample 2018-12-27 10:02:04 +08:00
zsx
0004373bcd fixed bugs of acl_fiber_cond_timedwait in acl_fiber_cond.c 2018-12-25 11:32:42 +08:00
zsx
50be7b26a6 fiber_cond.c: fixed one bug in acl_fiber_cond_timedwait when timeout happened 2018-12-24 17:12:10 +08:00
zsx
bd6375fe2a connect_manager: support fiber running in threads 2018-12-16 16:47:51 +08:00
郑树新
fcd083d307 build on Windows ok 2018-12-14 16:34:28 +08:00
zsx
a1636cb371 fixed sample's bug 2018-12-14 11:47:17 +08:00
zsx
04dd410821 add samples: thread_cond/thread_tbox 2018-11-30 18:26:25 +08:00
zsx
fb271fd104 format to DOS style. 2018-11-30 14:38:22 +08:00
zsx
ec495072b1 lib_fiber/c/src/fiber_event.c: fixed one bug for lock conlision 2018-11-28 09:47:04 +08:00
zhengshuxin
f7af753d9e add one flag when creating fiber_event 2018-11-24 11:49:18 +08:00
郑树新
e6cead0a67 fixed one problem in getaddrinfo of lib_fiber; 2018-09-19 18:36:05 +08:00
zsx
f403d09da6 delete unused files. 2018-09-17 14:31:12 +08:00
zsx
4e393625c0 delete unused files. 2018-09-17 14:26:46 +08:00
zsx
f15c17ae29 build ok for Mac 2018-09-17 14:20:45 +08:00
zsx
46f12d39ca using libfiber.h for C and libfiber.hpp for C++ 2018-08-19 23:03:39 +08:00
zhengshuxin
e5b554930b some samples of fiber should be compiled by c++11 compiler. 2018-08-10 21:02:14 +08:00
zsx
d64d78eb16 libfiber can be used on MacOS 2018-04-24 14:29:35 +08:00
zhengshuxin
7647c210b7 acl build without ACL_PREPARE_COMPILE defined 2018-04-17 16:42:26 +08:00
zsx
902a76e55b build on windows 2018-03-05 11:11:55 +08:00
zsx
63f9ac04f8 merge from libfiber 2018-03-05 11:05:05 +08:00
zhengshuxin
4614c7e118 fiber event: fixed possible bug in events 2017-09-22 22:11:51 +08:00
zhengshuxin
7670fca314 compiling for FreeBSD ok 2017-09-22 19:22:26 +08:00
zsx
3c46adddb3 fiber_server: support setting schedule event type in configure. 2018-02-05 10:16:52 +08:00
郑树新
342f42c38a fiber: support winsock IOCP event. 2018-02-01 18:40:31 +08:00
郑树新
2af5a9307f fiber: adding iocp event 2018-01-31 19:01:04 +08:00
zsxxsz
580fdc4f72 fiber event: adding iocp for winsock 2018-01-30 23:45:34 +08:00
zsx
7329f830e9 server_socket supports SO_REUSEPORT on Linux3.x 2018-01-29 23:33:49 +08:00
zsx
a6f74434c6 fiber sample server2: testing schedule automticaly 2018-01-28 17:11:57 +08:00
zsxxsz
2e38ce1365 fiber schedule process can be triggered automaticly. 2018-01-28 12:34:23 +08:00
zsx
52ac1f747b acl_fiber_schedule_stop needn't be called when all IO fibers were finished. 2018-01-22 23:46:58 +08:00
zsxxsz
66c05c16cb fiber for windows: client2 and server2 run very well:) 2018-01-22 22:01:12 +08:00
郑树新
49a92e9348 fiber io can also stop automaticly when no IO and no timers been set. 2018-01-22 18:38:50 +08:00
zsx
12fe61726a fiber_io.c: IO fiber can exit automatically when no FD and no timer. 2018-01-22 17:31:00 +08:00
zsxxsz
588c871124 fiber client2 sample can run on Windows. 2018-01-21 15:41:19 +08:00
zsxxsz
3b2d58ed59 fiber server2 can run on windows. 2018-01-21 11:39:19 +08:00
zsxxsz
400904dccf add error handling in acl_vstream.c & poll.c when operation timeout;
in fiber_win.c when calling CreateFiberEx, using size as the parameter
dwStackReserveSize;
2018-01-20 21:57:39 +08:00
zsx
e799a55b9f fiber sample: server5 2018-01-19 19:22:06 +08:00
zsx
7af7f753fb add one fiber sample 2018-01-18 16:07:20 +08:00
zsx
602128784f fiber sample: add http_request sample 2018-01-17 15:55:10 +08:00
郑树新
d819724c3b fiber performance: improve the messages handling performance in Windows 2018-01-17 14:10:19 +08:00
zsxxsz
a2b795a7fe fiber_io fiber can be restarted. 2018-01-16 22:37:23 +08:00
郑树新
4afcac70a0 improve fiber IO performance when using timedwait read/write. 2018-01-16 18:24:13 +08:00
郑树新
0e12675b7b WinEchod use UNICODE charset 2018-01-15 12:22:04 +08:00
郑树新
a19555d3c2 WinEchodDl's vc2013 project 2018-01-15 12:15:51 +08:00
郑树新
fd1cd5df2e add vc2013 project for demo WinEchod of acl fiber. 2018-01-15 11:32:59 +08:00
zsxxsz
768d30a56c fiber for windows OS can use IO read/write with timed waiting by using select/poll;
ACL_VSTREAM's NETWORK IO read/write interface can be hooked by user's IO API.
2018-01-14 22:54:44 +08:00
zsxxsz
c2a2d1b579 building fiber lib and samples are all ok by vc2012 and vc2013 2018-01-13 23:24:45 +08:00
zsxxsz
ebf0361142 fiber event optimize 2018-01-13 09:37:57 +08:00
zsx
f58d187421 compiling fiber on Linux 2018-01-12 22:29:21 +08:00
郑树新
bc24d1e75a fiber based on win32 gui message 2018-01-12 19:15:08 +08:00
zsxxsz
d108b3750a for win32 gui fiber 2018-01-12 00:28:30 +08:00
郑树新
5a45a0d886 win32 message fiber event 2018-01-11 19:13:31 +08:00
郑树新
4843851cbf add FiberSleep class for demo 2018-01-11 18:30:06 +08:00
郑树新
e55a183e1e WinEchod: rename class files' name;
win32 message is OK;
2018-01-11 14:19:09 +08:00
zsxxsz
63c9decbbd acl fiber can be used on win32 GUI messsage 2018-01-11 00:11:15 +08:00
郑树新
7f35e9236f acl fiber can now support win32 gui message engine 2018-01-10 17:48:45 +08:00
郑树新
038dcc9a43 add listener fiber and client fiber 2018-01-10 17:48:22 +08:00
郑树新
e64945edd7 win32 gui fiber sample 2018-01-09 19:02:10 +08:00
zsxxsz
c6c268a9f3 add demo 2018-01-09 00:05:28 +08:00
zsxxsz
4371535b8e add lost vc project for fiber sample 2018-01-02 21:03:09 +08:00
zsx
c4d9790d5f fiber event: using select as event engine internal for unix/windows 2018-01-01 22:50:11 +08:00
zsxxsz
c7fc99f2d8 fiber for windows can run:) 2018-01-01 00:10:00 +08:00
zhengshuxin
06ce51b912 changes "\r\n" to "\n" 2017-09-22 12:27:21 +08:00
zsx
0da73b81eb fiber: epoll hook ok 2017-12-23 12:30:13 +08:00
zsx
19d13adcf9 new fiber module will be ready:) 2017-12-21 18:55:50 +08:00
zsx
ab44af95c6 fixed some event problems 2017-12-21 15:46:48 +08:00
zsx
d91221f939 add valgrind shell 2017-12-21 14:21:38 +08:00
zsx
64b6a0eb6d fiber_server.cpp should open REUSEPORT flag when runing alone with multi-threads 2017-12-21 11:23:58 +08:00
zsx
2b5dcb00e7 add valgrind shell 2017-12-21 10:25:09 +08:00
zsx
2ab420dea0 add valgrind shell 2017-12-21 09:43:39 +08:00
zsx
7572f0b18f fiber dns will be ok 2017-12-20 23:01:58 +08:00
zsx
9638c50179 fiber: fixed one urgent bug in hook_net.c for hooking poll API 2017-12-19 18:56:47 +08:00
zsx
14d4eb2239 new fiber framework will be ready 2017-12-18 23:49:47 +08:00
zsx
f65d447815 new event for fiber 2017-12-18 16:57:57 +08:00
zsx
4b28397af4 fiber event: add new event for fiber 2017-12-17 23:47:39 +08:00
zsx
fe754e6f42 fiber samples/thread_mbox: test multithreads writers 2017-12-15 10:58:46 +08:00
zsx
f0c52f92f1 acl_mbox supports eventfd as notify handle 2017-12-12 14:02:25 +08:00
zsx
1b164db078 ssl: polarssl_conf's init should not in constructor 2017-12-07 16:24:21 +08:00
ubuntu14
42c1eb8b2d polarssl_conf: fixed one bug when loading polarssl library 2017-12-03 14:54:47 +08:00
zsx
71289ca92f fiber_event is ok 2017-11-24 15:24:17 +08:00
zsx
2f81af614b samples: fiber_event's sample changed. 2017-11-24 11:40:01 +08:00
zsx
450d06a66c fier: add acl_fiber_event_trywait 2017-11-24 11:10:44 +08:00
zsx
acac0ad2f8 fiber_lock: use the new fiber event lock with high performance. 2017-11-23 12:59:24 +08:00
zhengshuxin
7749e15bcc fiber: test 2017-10-12 18:59:50 +08:00
zhengshuxin
57e4c8663d thread_lock: fixed bug 2017-10-10 14:05:57 +08:00
zhengshuxin
9970075fa1 fiber_mutex: fixed one bug when thread_safe parameter is set true 2017-10-10 11:47:35 +08:00
zhengshuxin
b998731976 building: modify Makefiles to build more quickly on multi-cores CPU 2017-10-10 10:19:59 +08:00
zhengshuxin
e8219034c3 sql in db.sql is error 2017-10-08 22:29:03 +08:00
zhengshuxin
29513259ed fiber_lock: can use thread_mutex or atomic lock for threads safety mutex 2017-10-08 14:42:01 +08:00
zhengshuxin
4a64289643 test event_mutex & fiber_lock 2017-10-08 12:07:17 +08:00
zhengshuxin
1050d4e45f event_mutex: add event_mutex sample in fiber mode; testing event_mutex ok in threads & fibers running modes. 2017-10-08 00:06:12 +08:00
zhengshuxin
c2b85d8c87 delete tmp file 2017-10-01 14:03:37 +08:00
zhengshuxin
3d71e10668 fiber: fiber_lock can trigger immediately with IO event 2017-10-01 13:54:57 +08:00
zhengshuxin
4887620f18 fiber samples: add thread_lock for testing acl::fiber_lock in threads+fiber mode. 2017-10-01 13:54:18 +08:00
zhengshuxin
dbfa9e8c10 lib_fiber: hook_io.c supports hooking stat/fstat/lstat 2017-09-23 00:27:26 +08:00
zhengshuxin
31fc50166c add trigger.hpp into all vc's projects;
add trigger sample for fiber trigger;
2017-09-18 22:28:52 +08:00
zhengshuxin
e04cf8ec1b build ok for FreeBSD 2017-09-11 11:59:39 +08:00
zhengshuxin
89c74a1e7c delete unused codes 2017-09-02 21:02:37 +08:00
zhengshuxin
c76d603428 remove unused code. 2017-09-02 20:55:48 +08:00
zhengshuxin
2af766fb6e make acl::mbox generic with c++ template method. 2017-09-01 23:14:20 +08:00
zhengshuxin
5291cd0c7a test only 2017-09-01 18:59:42 +08:00
zhengshuxin
c9f0a6b92e add fiber timer for C++ module 2017-08-25 13:34:48 +08:00
zhengshuxin
1758f39c30 icmp module can support client and server modes. 2017-08-18 18:11:11 +08:00
zhengshuxin
894350e1df modify icmp module for ping 2017-08-18 10:05:11 +08:00
zhengshuxin
a96eca4956 icmp ping ok. 2017-08-17 19:07:55 +08:00