zhengshuxin
|
c0df7d2aa9
|
Merge branch 'master' of gitee:zsxxsz/acl into gitee-master
|
2023-07-10 16:18:47 +08:00 |
|
zhengshuxin
|
b3d9d9e094
|
Replace fiber_file_open_read() & fiber_file_open_write() with fiber_file_open().
|
2023-07-10 16:17:09 +08:00 |
|
lday
|
e4c32ebb6f
|
link liburing-ffi
|
2023-07-09 21:30:25 +08:00 |
|
zhengshuxin
|
157e138622
|
Change conditional macro from DISABLE_HOOK_IO to DISABLE_HOOK for compiling.
|
2023-07-09 12:38:59 +08:00 |
|
zhengshuxin
|
d2e0e4963d
|
Optimize codes of fiber module.
|
2023-07-07 16:50:22 +08:00 |
|
zhengshuxin
|
fba503dde5
|
Add some comments.
|
2023-06-27 14:33:08 +08:00 |
|
zhengshuxin
|
aacc3129cb
|
Optimize and test the hooked poll API.
|
2023-06-26 17:54:17 +08:00 |
|
zhengshuxin
|
b0c18461cc
|
test
|
2023-06-26 16:46:19 +08:00 |
|
zhengshuxin
|
c5b6dab9aa
|
test poll.c
|
2023-06-26 16:26:02 +08:00 |
|
zhengshuxin
|
9df7c8d7b1
|
Optimize fiber event for supporting read/write on the same socket.
|
2023-06-26 12:04:27 +08:00 |
|
zhengshuxin
|
e664c947e0
|
optimize and test poll.c
|
2023-06-26 11:09:48 +08:00 |
|
zhengshuxin
|
d232a391e3
|
remove event for read/writer should support directive mode.
|
2023-06-26 09:24:40 +08:00 |
|
zhengshuxin
|
704b9a4b7a
|
set fiber_r/fiber_w NULL after read/write waiting wakeup.
|
2023-06-25 11:42:03 +08:00 |
|
zhengshuxin
|
2563625613
|
fixed one compiling warning in fiber_hook.h
|
2023-06-25 09:49:49 +08:00 |
|
zhengshuxin
|
3e7a588d60
|
Add set_fdlimit in fiber.hpp
|
2023-06-21 10:56:02 +08:00 |
|
zhengshuxin
|
5919f5460d
|
Don't abort when loading sendmmsg error on lower Linux.
|
2023-06-20 18:52:46 +08:00 |
|
zhengshuxin
|
478008e99a
|
Add comment in go_fiber.hpp
|
2023-06-20 17:19:17 +08:00 |
|
zhengshuxin
|
e1ca2d117a
|
test fiber_sbox2 when using unique_ptr
|
2023-06-20 16:43:51 +08:00 |
|
zhengshuxin
|
54a295b0f2
|
rename fiber_sem_t_def to fiber_sem_t_sync.
|
2023-06-18 17:36:58 +08:00 |
|
zhengshuxin
|
8265c1c330
|
Use shared_ptr to protect socket_stream accepted.
|
2023-06-18 00:01:20 +08:00 |
|
zhengshuxin
|
154920d0fe
|
Add size() for fiber_sbox class.
|
2023-06-12 18:27:07 +08:00 |
|
zhengshuxin
|
52a3da825c
|
test demo
|
2023-06-12 11:55:44 +08:00 |
|
zhengshuxin
|
0dfd92493f
|
optimize and test fiber_sbox
|
2023-06-12 11:36:02 +08:00 |
|
zhengshuxin
|
afc686ff2d
|
test fiber_sbox2.
|
2023-06-11 21:41:31 +08:00 |
|
zhengshuxin
|
45e4d74add
|
Add fiber_sbox2() for transfering object such as shared_ptr.
|
2023-06-11 21:35:19 +08:00 |
|
zhengshuxin
|
6b96da683f
|
format code style.
|
2023-06-11 18:34:41 +08:00 |
|
zhengshuxin
|
7eb5a23ab1
|
std::atomic<long>'s variable should be initiated in MacOS clang.
|
2023-06-11 18:33:59 +08:00 |
|
zhengshuxin
|
0991d1c53c
|
Add fiber_pool demo to test fiber pool mode.
|
2023-06-09 18:48:28 +08:00 |
|
郑树新
|
56995f709c
|
Fixed bug in acl_get_ifaddrs on windows.
|
2023-06-07 23:26:37 +08:00 |
|
zhengshuxin
|
ab148987ce
|
service templates in the mode of fiber or thread can bind wildcad addresses.
|
2023-05-25 19:00:22 +08:00 |
|
zhengshuxin
|
d14accaefb
|
Add comments for fiber_tbox2.
|
2023-05-24 17:33:09 +08:00 |
|
shuxin zheng
|
ca1728d4e3
|
Add fiber_tbox2.hpp into xcode project.
|
2023-05-24 16:36:59 +08:00 |
|
zhengshuxin
|
4d2259e912
|
Add fiber_tbox2 for supporting std::shared_ptr.
|
2023-05-24 16:27:24 +08:00 |
|
zhengshuxin
|
425927b886
|
recvmmsg API's declaration is different between Ubuntu and CentOS.
|
2023-05-19 17:57:49 +08:00 |
|
zhengshuxin
|
becf9dc59d
|
Add timeouted read when using fiber_recvmmsg in fiber module.
|
2023-05-19 17:26:05 +08:00 |
|
zhengshuxin
|
603fd9938b
|
Support hooking recvmmsg/sendmmsg API in libfiber.
|
2023-05-19 17:13:46 +08:00 |
|
zhengshuxin
|
00b266843b
|
Test fiber_sem.
|
2023-05-13 00:06:50 +08:00 |
|
zhengshuxin
|
03e76d0a7e
|
fiber_sem add async mode for posting message.
|
2023-05-12 23:25:58 +08:00 |
|
zhengshuxin
|
1f1e47e4cd
|
Add HTTP PUT for demo
|
2023-05-05 14:18:50 +08:00 |
|
zhengshuxin
|
2d0fa87a8e
|
format code style
|
2023-04-27 10:50:21 +08:00 |
|
zhengshuxin
|
c220e156e9
|
format code style of fiber module.
|
2023-04-27 10:39:55 +08:00 |
|
zhengshuxin
|
d8f3bcd4ec
|
test fiber in sharing stack mode.
|
2023-04-26 14:11:40 +08:00 |
|
zhengshuxin
|
152053d343
|
Change the sharing stack's size from 1MB to 10MB.
|
2023-04-25 18:40:24 +08:00 |
|
shuxin zheng
|
30e28278e9
|
Build ok for multiple platforms.
|
2023-04-17 16:28:35 +08:00 |
|
zhengshuxin
|
af706f7143
|
Build fiber's demos sucessfully on cs6 and cs5
|
2023-04-11 15:59:13 +08:00 |
|
zhengshuxin
|
37ee4f42e6
|
test share stack of fiber
|
2023-04-04 19:08:26 +08:00 |
|
zhengshuxin
|
5de8370700
|
Optimize and test sharing stack of fiber.
|
2023-04-04 16:35:31 +08:00 |
|
zhengshuxin
|
4699c2f4c0
|
ETIMEDOUT should be used other than ETIME.
|
2023-03-31 23:18:38 +08:00 |
|
zhengshuxin
|
f4360ba693
|
Redis pipeline module can be used in sharing stack mode of fiber.
|
2023-03-31 21:51:45 +08:00 |
|
zhengshuxin
|
331e4826dc
|
Don't write some error log
|
2023-03-30 16:29:29 +08:00 |
|
zhengshuxin
|
8d371b0a17
|
Use ETIME other ETIMEDOUT on Unix-like OS.
|
2023-03-29 22:57:44 +08:00 |
|
zhengshuxin
|
66551ff234
|
build ok by cmake
|
2023-03-27 20:48:27 +08:00 |
|
shuxin zheng
|
2486695cc0
|
Fixed one bug in fiber_mutex module where some resouce collision maybe happen.
|
2023-03-22 14:56:05 +08:00 |
|
zhengshuxin
|
60ef870ff5
|
build on macos
|
2023-03-19 23:01:02 +08:00 |
|
zhengshuxin
|
afeb562f8a
|
MacOS doesn't support CLOCK_REALTIME_COARSE, we should use CLOCK_REALTIME.
|
2023-03-19 22:56:13 +08:00 |
|
zhengshuxin
|
43dde62075
|
Optimeize peformance by using clock_gettime to replace gettimeofday
|
2023-03-19 21:21:11 +08:00 |
|
zhengshuxin
|
389158b1a3
|
Optimize fiber's performance by decreasing the count of calling gettimeofday.
|
2023-03-18 19:19:57 +08:00 |
|
zhengshuxin
|
7ec8c3aa44
|
build acl on centos5.8, 6.6
|
2023-03-08 14:15:27 +08:00 |
|
zhengshuxin
|
489937e444
|
Optimize Makefile.
|
2023-02-14 16:36:24 +08:00 |
|
zhengshuxin
|
aed84b645f
|
Modify readme
|
2023-02-11 00:14:52 +08:00 |
|
zhengshuxin
|
63b5f80298
|
Add some debug functions.
|
2023-02-05 10:25:54 +08:00 |
|
zhengshuxin
|
3ff6cf80fb
|
c++ headers dependence
|
2023-02-04 21:00:37 +08:00 |
|
zhengshuxin
|
6edfd3c74d
|
headers sequence
|
2023-02-04 20:49:54 +08:00 |
|
zhengshuxin
|
0c1a9d9484
|
test demo
|
2023-01-28 15:46:32 +08:00 |
|
zhengshuxin
|
846358ee6f
|
Modify fiber's readme
|
2023-01-26 16:15:11 +08:00 |
|
zhengshuxin
|
8224e8888a
|
Add default event type in acl::fiber::schedule()
|
2023-01-26 16:03:16 +08:00 |
|
zhengshuxin
|
488ea4d473
|
modify readme
|
2023-01-25 22:05:58 +08:00 |
|
zhengshuxin
|
937f4c0739
|
Modify readme of libfiber
|
2023-01-25 21:31:34 +08:00 |
|
zhengshuxin
|
8d719cbe30
|
Add fiber_mutex_guard class for easily using fiber_mutex.
|
2023-01-17 17:39:57 +08:00 |
|
zhengshuxin
|
70e825f513
|
Rename id() to fiber_id() in fiber.hpp
|
2023-01-17 17:18:56 +08:00 |
|
shuxin zheng
|
fbe061245c
|
test aio_server in fiber mode
|
2023-01-16 17:04:30 +08:00 |
|
zhengshuxin
|
37a5f3bcd0
|
Test fcntl for hooking API
|
2023-01-16 16:26:31 +08:00 |
|
zhengshuxin
|
bdb35bc6e9
|
Optimize hook API of fcntl.
|
2023-01-16 16:22:38 +08:00 |
|
zhengshuxin
|
780318a3df
|
Hook fcntl on Linux.
|
2023-01-16 15:46:43 +08:00 |
|
zhengshuxin
|
5927fddb41
|
Add demo test the performance ACL_FIBER_LOCK vs ACL_FIBER_MUTEX
|
2023-01-12 22:30:24 +08:00 |
|
zhengshuxin
|
f36257685e
|
Test .
|
2023-01-12 17:50:40 +08:00 |
|
zhengshuxin
|
884c1457b2
|
Set fiber's status before it's suspended.
|
2023-01-12 17:49:24 +08:00 |
|
zhengshuxin
|
ea3770320a
|
Add the global object to hold all ACL_FIBER_COND objects.
|
2023-01-12 17:48:29 +08:00 |
|
zhengshuxin
|
fd9806b2a6
|
Add conditional compiling with DEBUG_STACK
|
2023-01-11 23:02:39 +08:00 |
|
郑树新
|
cf25672923
|
Build ok on windows.
|
2023-01-11 22:51:39 +08:00 |
|
zhengshuxin
|
1ec47b99b0
|
Just compiling.
|
2023-01-11 22:47:18 +08:00 |
|
zhengshuxin
|
6305f57e48
|
test
|
2023-01-11 22:42:03 +08:00 |
|
zhengshuxin
|
b10fd0acad
|
Build ok on MacOS
|
2023-01-11 22:40:12 +08:00 |
|
zhengshuxin
|
3ef3fa8128
|
Add C++ API for fiber mutex deadlock checking.
|
2023-01-11 22:29:45 +08:00 |
|
zhengshuxin
|
758dd3852a
|
Add stacktrace for fiber cpp lib.
|
2023-01-11 10:22:33 +08:00 |
|
zhengshuxin
|
0864514ae4
|
Build demos on MacOS
|
2023-01-11 00:29:44 +08:00 |
|
zhengshuxin
|
fb02991e32
|
Use SNPRINTF macro for multiple platforms.
|
2023-01-11 00:24:44 +08:00 |
|
zhengshuxin
|
e4b0b89bf4
|
The deadlock function is ok.
|
2023-01-11 00:19:09 +08:00 |
|
zhengshuxin
|
e5c61d1130
|
Add deadlock checking for ACL_FIBER_MUTEX
|
2023-01-10 18:00:34 +08:00 |
|
zhengshuxin
|
6be344c73c
|
FIBER_F_STARTED flags should be set for origin fiber.
|
2023-01-04 17:58:56 +08:00 |
|
郑树新
|
5a4294cef4
|
build ok on windows
|
2023-01-03 22:30:32 +08:00 |
|
shuxin zheng
|
408c6e0db0
|
acl_fiber_stacktrace() can't be used on MacOS because libunwind don't support MacOS.
|
2023-01-03 15:47:19 +08:00 |
|
zhengshuxin
|
0732c5dd06
|
We can get any fibers' stack now.
|
2023-01-03 15:33:41 +08:00 |
|
zhengshuxin
|
891ef11c5a
|
Remove some useless items in ACL_FIBER to decrease the memory size of ACL_FIBER.
|
2023-01-03 14:42:31 +08:00 |
|
zhengshuxin
|
127c23da34
|
Optimize fiber sturcture and add fiber stack's backtrace for debuging.
|
2023-01-03 00:04:43 +08:00 |
|
shuxin zheng
|
cab643b862
|
Build ok by cmake.
|
2022-12-30 09:50:42 +08:00 |
|
zhengshuxin
|
e28c539c28
|
Don't test eventfd on MacOS
|
2022-12-29 22:21:50 +08:00 |
|
zhengshuxin
|
9da39ede8a
|
test eventfd in unit_test of fiber module
|
2022-12-29 22:20:06 +08:00 |
|
zhengshuxin
|
7dab9ca16a
|
add eventfd test in unit_test of fiber module.
|
2022-12-29 22:11:51 +08:00 |
|
zhengshuxin
|
8ab868259d
|
add file read test in unit_test of fiber
|
2022-12-29 21:51:06 +08:00 |
|
shuxin zheng
|
dd5171df8c
|
fixed one bug in MacOS for checking one fd can be monitored by event
|
2022-12-29 18:48:58 +08:00 |
|
zhengshuxin
|
799620696c
|
add test cases in unit_test for fiber module
|
2022-12-29 17:28:06 +08:00 |
|
zhengshuxin
|
c674ebeac2
|
Adding unit testing framework for fiber module.
|
2022-12-28 17:04:41 +08:00 |
|
zhengshuxin
|
4e73f4be3a
|
fiber_cond using the global timer to waiting timer arriving.
|
2022-12-28 12:40:18 +08:00 |
|
zhengshuxin
|
eae6be59ed
|
Optimize sync_timer.c by using the global timer.
|
2022-12-28 00:01:44 +08:00 |
|
zhengshuxin
|
d2ac79798a
|
Optimize fiber's timer module for performance improvement by using AVL tree.
|
2022-12-27 16:20:47 +08:00 |
|
zhengshuxin
|
7eed42a74a
|
fixed one bug in sync_timer.c for waiting with timeout
|
2022-12-26 18:49:24 +08:00 |
|
zhengshuxin
|
0a06559547
|
just optimize codes
|
2022-12-25 16:54:14 +08:00 |
|
zhengshuxin
|
79ee418c14
|
test fiber_cond
|
2022-12-25 16:20:13 +08:00 |
|
zhengshuxin
|
6667c02ca9
|
optimize sync_waiter.c when the waiter fiber and the wakeup fiber are in the same thread.
|
2022-12-25 16:19:05 +08:00 |
|
zhengshuxin
|
199bae6894
|
add checking before call sync_timer_await
|
2022-12-25 16:18:41 +08:00 |
|
zhengshuxin
|
078601357a
|
fixed one bug that the function pointer of IO api maybe not been set
|
2022-12-25 16:16:39 +08:00 |
|
zhengshuxin
|
da9959c4db
|
Don't add reference for FILE_EVENT in poll.c
|
2022-12-22 16:23:39 +08:00 |
|
zhengshuxin
|
078e0b23fd
|
The current running fiber should be set in poll.c
|
2022-12-20 16:15:46 +08:00 |
|
zhengshuxin
|
7a8694e367
|
Fixed one bug in poll.c for closing another fiber's fd
|
2022-12-20 15:34:47 +08:00 |
|
zhengshuxin
|
afaf06e041
|
add another more efficient sendfile's implement than by using splice.
|
2022-12-12 02:36:11 +08:00 |
|
zhengshuxin
|
fbbf99ea0d
|
delete usless MACRO define
|
2022-12-12 01:00:43 +08:00 |
|
zhengshuxin
|
8901830536
|
test fiber_stop demo
|
2022-12-19 15:00:03 +08:00 |
|
zhengshuxin
|
cf53a8add4
|
add one demo.
|
2022-12-11 21:31:18 +08:00 |
|
郑树新
|
75526ace1a
|
build ok on windows
|
2022-12-17 19:20:20 +08:00 |
|
zhengshuxin
|
b4ef412762
|
add one demo for test waiting fiber with fiber_tbox
|
2022-12-16 21:57:41 +08:00 |
|
zhengshuxin
|
a77777c6f9
|
add dead lock test
|
2022-12-16 20:29:03 +08:00 |
|
zhengshuxin
|
92d5fdc284
|
release 3.6.0-2 for compatibility for calling gettid() on Linux.
|
2022-12-16 14:53:04 +08:00 |
|
zhengshuxin
|
ffe5b13c9e
|
compiling ok on ubuntu
|
2022-12-16 13:48:37 +08:00 |
|
shuxin zheng
|
4706251ffa
|
build ok on macos
|
2022-12-16 13:44:49 +08:00 |
|
zhengshuxin
|
050276c8fe
|
fixed one occasionally bugs in fiber_mutex that the waiter can't be wakeuped.
|
2022-12-16 12:42:47 +08:00 |
|
zhengshuxin
|
5b6d473d7b
|
test demo
|
2022-12-16 12:00:57 +08:00 |
|
zhengshuxin
|
61f9c60c8a
|
format code style
|
2022-12-16 10:39:18 +08:00 |
|
zhengshuxin
|
22c65aba40
|
macro define should enclosed in brackets
|
2022-12-16 10:38:48 +08:00 |
|
zhengshuxin
|
a20e6ee97a
|
adding fiber dead lock ...
|
2022-12-13 17:45:21 +08:00 |
|
zhengshuxin
|
0440437f5c
|
adding fiber mutex dead lock ...
|
2022-12-10 17:11:29 +08:00 |
|
zhengshuxin
|
41d6e8b53b
|
add some comments
|
2022-12-09 18:33:57 +08:00 |
|
zhengshuxin
|
a5ea885bb1
|
test fiber_tbox
|
2022-12-09 18:32:29 +08:00 |
|
zhengshuxin
|
bc029e4dd8
|
The eventfd can't use socket IO API which can only use read/write API.
|
2022-12-09 18:31:41 +08:00 |
|
zhengshuxin
|
773ddad8c6
|
optimize fiber_read.c/fiber_write.c by using C macro
|
2022-12-09 18:27:57 +08:00 |
|
zhengshuxin
|
bbcb2484f8
|
just compiling for linux
|
2022-12-08 17:23:56 +08:00 |
|
shuxin zheng
|
65221aab45
|
add new files into the vs projects in fiber module
|
2022-12-08 17:18:51 +08:00 |
|
shuxin zheng
|
7b0b7c73bb
|
move some internal IO functions into one file io.h
|
2022-12-08 17:12:13 +08:00 |
|
zhengshuxin
|
16db7043e4
|
optimize for one FILE_EVENT can be used by more fibers simultaneously.
|
2022-12-08 16:47:28 +08:00 |
|
zhengshuxin
|
dec66530a2
|
fixed one bug that lseek can't distinguish eventfd and file fd, so we use another method to do it.
|
2022-12-08 16:31:02 +08:00 |
|
zhengshuxin
|
970c19e531
|
test ...
|
2022-12-08 14:27:01 +08:00 |
|
zhengshuxin
|
901c42b804
|
optimizing fiber module ...
|
2022-12-07 21:38:46 +08:00 |
|
zhengshuxin
|
2d66b48b75
|
add one demo to test multiple threads and fibers writing log with the same fd
|
2022-12-06 21:57:19 +08:00 |
|
zhengshuxin
|
7ef9870487
|
delete unused file
|
2022-12-06 16:53:14 +08:00 |
|
zhengshuxin
|
0a4ecd5d94
|
rename file_read.c/file_write.c to fiber_read.c/fiber_writer.c
|
2022-12-06 15:34:27 +08:00 |
|
zhengshuxin
|
2b2f6dd57f
|
move IO read/write to the file_read.c/file_write.c
|
2022-12-05 18:40:22 +08:00 |
|
zhengshuxin
|
0b559431ea
|
add conditional compiling for statx, renameat in fiber module
|
2022-12-03 20:06:02 +08:00 |
|
zhengshuxin
|
3f557c576a
|
prepare for the new version 3.6.0
|
2022-12-01 20:22:33 +08:00 |
|
zhengshuxin
|
69fcff4150
|
test demo
|
2022-12-01 19:42:48 +08:00 |
|
zhengshuxin
|
b81c1f9db0
|
init res value
|
2022-11-30 13:48:10 +08:00 |
|