Commit Graph

648 Commits

Author SHA1 Message Date
zhengshuxin
27f8fa6fb6 optimize and test fiber_cond 2022-11-13 13:52:41 -05:00
zhengshuxin
19f19ad7c0 optimize fiber_cond 2022-11-13 12:38:46 -05:00
zhengshuxin
652008e29a optimize and test fiber_mutex, fiber_cond 2022-11-13 12:00:09 -05:00
zhengshuxin
14f0900b73 optimize ... 2022-11-14 05:43:55 -05:00
zhengshuxin
eadd92e9e3 optimize mdule of fiber 2022-11-14 04:55:09 -05:00
zhengshuxin
84ab52a4a5 optimize and test fiber_cond 2022-11-14 04:39:28 -05:00
zhengshuxin
0ad17e5048 test fiber_cond ... 2022-11-14 02:56:57 -05:00
zhengshuxin
f84cfa370d change the cpp of fiber according the c's changing. 2022-11-13 10:37:41 -05:00
zhengshuxin
948716dd57 optimize fiber_cond and fiber_mutex 2022-11-13 10:11:36 -05:00
zhengshuxin
65a84a6ede adding new fiber_cond ... 2022-11-13 03:31:02 -05:00
zhengshuxin
8863f9ef93 optimize fiber_mutex 2022-11-13 00:06:48 -05:00
zhengshuxin
1d83f7c6cf optimize fiber_mutex 2022-11-12 21:54:50 -05:00
zhengshuxin
bbafef19ad optimize and test fiber_mutex.c 2022-11-12 21:15:51 -05:00
zhengshuxin
821d06d573 test fiber_mutex 2022-11-11 09:53:23 -05:00
zhengshuxin
d4981e0a9a test ... 2022-11-10 10:12:10 -05:00
zhengshuxin
3d8a6a7879 optimize and test fiber_mutex ... 2022-11-09 09:09:00 -05:00
zhengshuxin
fb91f6ffd2 add lost files 2022-11-08 08:56:22 +08:00
zhengshuxin
4d81f0fe5f adding fiber_mutex ... 2022-11-07 18:28:28 +08:00
zhengshuxin
7344b417a4 adding fiber mutex ... 2022-11-06 09:21:53 -05:00
zhengshuxin
883f4d0e2d there is some error in fiber_event.c to be fixed in io_uring mode, the fiber_event.c maybe to rewrite ... 2022-11-03 06:45:53 -04:00
zhengshuxin
fa5d46f3b3 test 2022-11-02 10:28:00 -04:00
zhengshuxin
49b617f2e3 use different context for read/write operations in io_uring module 2022-11-02 06:57:18 -04:00
zhengshuxin
b78e958dea test splice, pread, pwrite in multiple coroutines in multiple threads 2022-10-31 04:54:43 -04:00
郑树新
733e83c5b6 test fiber with iocp engine 2022-10-30 23:27:48 +08:00
郑树新
e1d749eef6 compile on windows 2022-10-30 19:56:24 +08:00
zhengshuxin
bd04860c0e optimize io_uring engine in lib_fiber 2022-10-30 05:48:23 -04:00
zhengshuxin
9b977d213d optimize io_uring ... 2022-10-29 11:38:33 -04:00
zhengshuxin
9b4b38d59f optimize and test io_uring 2022-10-28 11:58:28 -04:00
zhengshuxin
913629b5e9 optimize code style 2022-10-28 06:23:52 -04:00
zhengshuxin
a87aadb291 add io_uring in master service template. 2022-10-26 11:21:28 -04:00
zhengshuxin
9286a008c5 test 2022-10-26 07:03:34 -04:00
zhengshuxin
3f36b8da2f optimize and test fiber module 2022-10-24 03:33:06 -04:00
郑树新
106283c9f4 build ok for windows 2022-10-23 18:08:20 +08:00
zhengshuxin
003338f197 add compiling conditions 2022-10-23 17:38:53 +08:00
zhengshuxin
5baf77edf5 add conditional compiling for using io_uring 2022-10-23 17:22:14 +08:00
zhengshuxin
9913bcdb81 build on mac 2022-10-23 10:15:04 +08:00
zhengshuxin
a8241bfdcc optimize and test pread/pwriter in io_uring engine 2022-10-20 05:32:22 -04:00
zhengshuxin
d8db1f5de9 test and optimize ... 2022-10-21 06:30:55 -04:00
zhengshuxin
acac293ee1 test sendfile ... 2022-10-20 01:25:54 -04:00
zhengshuxin
7e30d96f45 test sendfile of io_uring ... 2022-10-20 07:14:04 -04:00
zhengshuxin
9ceca47c9f optimize and test io_uring... 2022-10-19 06:45:10 -04:00
zhengshuxin
7f635e1cd6 test and optimize io_uring 2022-10-10 07:42:19 -04:00
zhengshuxin
f960c8f689 test io_uring 2022-10-18 06:47:08 -04:00
zhengshuxin
ecc4a945bd test and optimize io_uring ... 2022-10-17 06:33:14 -04:00
zhengshuxin
f67cac51a6 optimize and test io_uring 2022-10-17 01:55:43 -04:00
zhengshuxin
a1f492844a test 2022-10-10 02:32:21 -04:00
zhengshuxin
b9f1d3f677 optimize and test io_uring module in fiber 2022-10-10 02:25:10 -04:00
zhengshuxin
b3c2ddaac8 adding pread, pwrite, sendfile in io_uring module of fiber 2022-10-09 12:09:09 -04:00
zhengshuxin
ce0c45f8d5 add supporting file operations in io_uring event of fiber mode 2022-10-13 00:48:42 -04:00
zhengshuxin
a78f08a6a9 io_uring in fiber supports file's open, read, and write. 2022-10-12 15:44:37 -04:00
zhengshuxin
4a2f036f7a optimize and test io_uring module in fiber 2022-10-12 05:55:50 -04:00
zhengshuxin
61c6053c29 build ok on macos 2022-10-11 22:37:09 +08:00
zhengshuxin
1ed47abeb1 optimize and test io_uring... 2022-10-08 15:15:21 -04:00
zhengshuxin
dd3fcc3919 add and test io_uring... 2022-10-09 11:30:07 -04:00
zhengshuxin
42bc75c237 test io_uring ... 2022-10-09 01:46:14 -04:00
zhengshuxin
615bb8d2c0 test and optimize io_uring 2022-10-08 14:07:32 -04:00
zhengshuxin
82d56ea351 add and test io_uring 2022-10-08 13:34:12 -04:00
zhengshuxin
ac915cf321 adding io_uring ... 2022-10-08 16:45:20 -04:00
zhengshuxin
14e9a8a159 adding io_uring ... 2022-10-08 10:25:40 -04:00
zhengshuxin
64dab7b0f9 adding io_uring ... 2022-10-08 07:23:56 -04:00
郑树新
f52536bd5a build dynamic DLL ok on windows 2022-09-14 16:24:54 +08:00
郑树新
58dceb57d5 optimize vs projects 2022-09-05 20:44:55 +08:00
zhengshuxin
864179f7fe test hooked IO api in fiber module 2022-09-05 10:33:40 +08:00
zhengshuxin
c9f82e8b85 format macro 2022-09-05 09:40:19 +08:00
zhengshuxin
5e3f7358ba optimize fiber_file_close() of fiber_io.c 2022-09-02 23:25:28 +08:00
zhengshuxin
fbd053268f restore socket IO process templely 2022-09-01 11:26:01 +08:00
zhengshuxin
ae39d3ec94 optimize network IO module. 2022-08-29 17:09:02 +08:00
郑树新
026485c21e compile acl on windows ok 2022-08-22 22:32:23 +08:00
zhengshuxin
1944187834 It't not reasonable in acl_fiber_poll() that the max timeout will used when the timeout is -1. 2022-08-15 15:11:41 +08:00
zhengshuxin
e664f21494 build acl ok on Cygwin 2022-08-06 20:03:51 +08:00
zhengshuxin
785487b466 add wait_group for fiber module like sync.WaitGroup in Golang 2022-08-01 15:48:21 +08:00
郑树新
2830be54fa Acl can be built by cmake tools chanins 2022-07-10 20:13:15 +08:00
zhengshuxin
63c994a1d4 test fiber event in multiple threads mode 2022-07-03 23:49:44 +08:00
zhengshuxin
6309cc694f build ok acl by xmake 2022-06-14 15:35:33 +08:00
shuxin   zheng
e4e3615f34 build for arm32 2022-06-02 23:06:53 +08:00
shuxin   zheng
835eaf3c4e build for arm32 2022-06-02 23:04:15 +08:00
shuxin   zheng
de6a5afb3a Don't expose acl_fiber_hook_api() 2022-05-29 13:04:02 +08:00
shuxin   zheng
ce0655e938 modify comments for ring structure 2022-05-11 18:42:08 +08:00
zhengshuxin
f90faf5542 fixed one bug in acl_fiber_yield() API in fiber.c where the returning value is invalid. 2022-05-11 17:39:28 +08:00
郑树新
95dbc454d6
Merge pull request #275 from sidyhe/bugfix2
fiber: bugfix recv when signal
2022-05-07 13:24:02 +08:00
郑树新
a1898f5cc6
Merge pull request #276 from sidyhe/bugfix3
fiber: /etc/hosts only for unix
2022-05-07 00:09:54 +08:00
Sid
3c3be91cf9
parse hosts for win32 2022-05-06 17:42:45 +08:00
Sid
086ea99044
fiber: /etc/hosts only for unix 2022-05-06 03:12:23 +08:00
sid
b1193d39c7 fiber: bugfix recv when signal 2022-05-06 02:44:24 +08:00
Sid
4801b5c8ee
fiber: bugfix unexpect exit
无IO协程时调度器异常退出 (win/linux)

复现步骤: 创建一个协程, 进行几个IO操作, 然后死循环 acl_fiber_delay(1000)
2022-05-06 02:33:51 +08:00
郑树新
854c1aa4ca merge and format event_iocp.c; add dns-gate demo project 2022-05-01 23:29:31 +08:00
郑树新
295913207d
Merge pull request #272 from sidyhe/bugfix
fiber: bugfix for win32 (add_read and iocp_wait)
2022-05-01 23:15:52 +08:00
Sid
2aab3ff9a0
fiber: fix doze for win32
在win32中不能使用select延时
2022-04-28 17:41:01 +08:00
Sid
2b43c3c5f6
typo 2022-04-28 10:43:01 +08:00
Sid
8214ff0d9e
fiber: iocp optimize
reduce repeat code
2022-04-28 10:38:56 +08:00
sid
1133a1dd33 fiber: bugfix for win32 (add_read and iocp_wait) 2022-04-27 21:58:36 +08:00
zhengshuxin
d9f0c8b5da remove some compiling options for MacOS 2022-04-11 19:09:39 +08:00
zhengshuxin
36e21ccd96 fixed one bug in fiber_io_loop() in fiber_io.c that don't exit before some fiber maybe running. 2022-04-11 18:28:41 +08:00
shuxin   zheng
e388eb2fb2 cross compile on macos 2022-04-11 14:59:02 +08:00
郑树新
a6573584ce
Merge pull request #269 from dragon-zhang/dev_mac_support_cross_compilation
mac support cross compile
2022-04-10 21:50:13 +08:00
zhengshuxin
76199ea5e6 Shared stack has been as the default compiling options. 2022-04-10 19:35:16 +08:00
hailang
5ef96d62fe Merge remote-tracking branch 'origin/master' into dev_mac_support_cross_compilation 2022-04-10 17:29:58 +08:00
hailang
3ddff50476 mac support cross compile 2022-04-10 15:43:29 +08:00
root
40dc44f72d test memcpy from Clickhouse 2022-04-09 20:02:58 +08:00
zhengshuxin
7c1660e415 optimize share stack mode for fiber 2022-04-08 08:10:14 +08:00
zhengshuxin
12006e2ff1 shared stack mode can be selected by users 2022-04-08 07:32:06 +08:00
zhengshuxin
f3ff13cc37 add fiber attr to control if using share stack when create one fiber. 2022-04-07 23:48:05 +08:00
zhengshuxin
a81e8880c4 Disable shared stack in default mode 2022-04-07 09:31:37 +08:00
zhengshuxin
67b964c8b0 optimize for shared stack for redis client lib in pipeline mode 2022-04-05 22:17:16 +08:00
zhengshuxin
da8cb4b5ed test httpd_proxy 2022-04-04 12:24:16 +08:00
zhengshuxin
21503e93cd optimize and test shared stack in fiber module 2022-04-03 21:52:23 +08:00
zhengshuxin
6cf533d280 fixed one compiling warning on Ubuntu 2022-04-01 23:08:00 +08:00
zhengshuxin
c4509a539b test shared stack 2022-04-01 19:06:54 +08:00
zhengshuxin
cadde6f996 add acl_fiber_get_shared_stack_size() 2022-04-01 14:39:54 +08:00
zhengshuxin
2d0dd07155 test fiber 2022-03-31 21:44:43 +08:00
zhengshuxin
01b0683a80 delete unused files 2022-03-31 21:28:52 +08:00
zhengshuxin
300de6b7e4 poll.c can support shared stack 2022-03-31 18:35:14 +08:00
zhengshuxin
e9ab8794c1 test shared stack of fiber module 2022-03-31 07:37:20 +08:00
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
f46a765ff7 Disable debug for valgrind in Makefile 2022-03-27 18:51:05 +08:00
zhengshuxin
7007d4d1fb optimize event_epoll.c 2022-03-26 22:06:59 +08:00
zhengshuxin
9ace98a715 test fiber event 2022-03-26 14:18:31 +08:00
zhengshuxin
fd46bf0c70 Merge branch 'master' of gitee:zsxxsz/acl into gitee-master 2022-03-23 21:24:05 +08:00
zhengshuxin
6520151c67 Don't write log in fiber_io_check() to avoid writing log recursively when user hooks the log process. 2022-03-23 21:22:56 +08:00
shuxin   zheng
294c672158 optimize log module of fiber 2022-03-23 18:48:31 +08:00
zhengshuxin
043eae1fee optimize hook/poll.c 2022-03-23 17:33:10 +08:00
zhengshuxin
4da53a2d6d optimize epoll.c for hooking system API in fiber module. 2022-03-23 16:00:31 +08:00
shuxin   zheng
2072e84431 build ok on MacOS 2022-03-22 16:12:22 +08:00
zhengshuxin
1ced194a2b optimize the API epoll's hooking in fiber module 2022-03-22 15:55:58 +08:00
zhengshuxin
921e2b4971 optimize the epoll API when checking IO timeout process same as poll API in fiber module 2022-03-18 15:04:24 +08:00
shuxin   zheng
9fceb75a52 support MacOS arm64 2022-03-15 16:32:07 +08:00
zhengshuxin
efed44582f modify compiling condition which jump lib should be used on diffrent platform 2022-03-15 16:25:32 +08:00
郑树新
c738ab47b7
Merge pull request #267 from dragon-zhang/dev_support_m1
fiber support apple m1 chip
2022-03-15 16:07:12 +08:00
hailang
6fe9f020bc fiber support apple m1 chip 2022-03-15 14:58:36 +08:00
郑树新
aa4ce34e22 compiling fiber module on windows platform 2022-03-14 23:57:05 +08:00
zhengshuxin
1c1d979cec Don't free fe when read error and the fd isn't a socket in acl_fiber_read() 2022-03-14 23:32:24 +08:00
zhengshuxin
7d2e355fb6 optimize and test fd closing process in fiber module 2022-03-14 18:06:27 +08:00
shuxin   zheng
424ef402bb test fiber 2022-03-13 21:25:11 +08:00
shuxin   zheng
6667c91705 optimize event module of fiber 2022-03-13 15:51:03 +08:00
zhengshuxin
69d5e8bd63 test closing fd in another fiber 2022-03-12 23:59:32 +08:00
郑树新
f63b1af090 add new files in vc project 2022-03-10 19:16:52 +08:00
zhengshuxin
6945a9f1cc add more comments for fiber module 2022-03-09 23:59:10 +08:00
zhengshuxin
fc3f1d5fee optimize hooked API in poll.c 2022-03-08 18:12:04 +08:00
shuxin   zheng
d120059d83 build ok on MacOS 2022-03-08 17:03:06 +08:00
zhengshuxin
1310323d77 optimize performance by caching temp object in fiber module 2022-03-08 16:05:53 +08:00
zhengshuxin
14837868c2 optimize timer module in fiber 2022-03-08 15:10:03 +08:00
zhengshuxin
7dc678dff1 test fiber 2022-03-08 07:28:49 +08:00
root
c532379f51 optimize performance by decrease calling gettimeofday();
optimize performance in the hooked API for poll and epoll;
2022-03-06 16:24:34 +08:00
郑树新
28a80b1c06 test fiber in iocp mode 2022-03-04 17:42:30 +08:00
郑树新
3044f6980b optimize closing another's fd in iocp mode on windows 2022-03-04 00:27:15 +08:00
zhengshuxin
2104e75f6e optimize closing another fiber's fd in one fiber 2022-03-03 22:24:52 +08:00
zhengshuxin
6d440dd494 optimize the closing fd process from anohter fiber 2022-03-03 18:47:23 +08:00
zhengshuxin
48a57a5abe optimize the process that closing one fd from another fiber 2022-03-03 12:42:01 +08:00
zhengshuxin
7fc6c823ab add compiling options for handling callback process 2022-03-02 22:41:10 +08:00
zhengshuxin
8cd6733b80 clear IO waiting status in hook/epoll.c in fiber module 2022-03-02 21:22:12 +08:00