summaryrefslogtreecommitdiff
path: root/thread_sync.c
AgeCommit message (Expand)Author
12 daysConvert Queue and SizedQueue to rb builtinJean Boussier
12 daysSpeedup Queue initializationJean Boussier
14 daysThread::Queue use a ring bufferJean Boussier
2025-12-18thread_sync.c: rename mutex_trylock internal functionJean Boussier
2025-12-18thread_sync.c: declare queue_data_type as parent of szqueue_data_type.Jean Boussier
2025-12-18thread_sync.c: simplify `check_array`Jean Boussier
2025-12-18thread_sync.c: eliminate GET_EC() from queue_do_popJean Boussier
2025-12-18thread_sync: Mutex keep `rb_thread_t *` instead of `VALUE`Jean Boussier
2025-12-16Rename fiber_serial into ec_serialJean Boussier
2025-12-16Store the fiber_serial in the EC to allow inliningJean Boussier
2025-12-12thead_sync.c: directly pass the execution context to yieldJean Boussier
2025-12-12Define Thread::ConditionVariable in thread_sync.rbJean Boussier
2025-12-11Mutex: avoid repeated calls to `GET_EC`Jean Boussier
2025-12-10Monitor: avoid repeated calls to `rb_fiber_current()`Jean Boussier
2025-12-08fix SEGV on clang-16/18Koichi Sasada
2025-11-20Use a serial to keep track of Mutex-owning FiberJohn Hawthorn
2025-09-25Properly unlock locked mutexes on thread cleanup.Luke Gruber
2025-08-28Make Thread::Queue and SizedQueue support compactionPeter Zhu
2025-08-14Remove duplicated line of code in thread_sync.cPeter Zhu
2025-04-02[DOC] Doc for Thread::ConditionVariableKunshan Wang
2024-11-23Ensure fiber scheduler re-acquires mutex when interrupted from sleep. (#12158)Samuel Williams
2024-02-12Replace assert with RUBY_ASSERT in thread_sync.cPeter Zhu
2024-01-17Remove SizedQueue#freezeJeremy Evans
2023-12-14[DOC] Adjust some new features wording/examples. (#9183)Victor Shepelev
2023-10-12M:N thread scheduler for RactorsKoichi Sasada
2023-09-27Make {Queue,SizedQueue}#freeze raise TypeErrorJeremy Evans
2023-09-08Try default `gcc` 9.4.0 to see if it exhibits the same compiler bugs. (#8394)Samuel Williams
2023-09-08Extract `do_mutex_lock_check_interrupts` to try and fix `ppc64le`. (#8393)Samuel Williams
2023-07-13[DOC] Add parenthetical to explain what FIFO abbrev meansShane Becker
2023-07-13[DOC] Fix example code indentation from 3 to 2Shane Becker
2023-03-07Correctly clean up `keeping_mutexes` before resuming any other threads. (#7460)Samuel Williams
2023-02-08Replace `PACKED_STRUCT` and `PACKED_STRUCT_UNALIGNED`Nobuyoshi Nakada
2023-01-21Add `queue_list` and `szqueue_list` macrosNobuyoshi Nakada
2023-01-19Fix compilation warnings in thread_sync.cPeter Zhu
2023-01-18Don't redefine RB_OBJ_WRITEPeter Zhu
2022-11-09mutex: Raise a ThreadError when detecting a fiber deadlock (#6680)Jean byroot Boussier
2022-10-20Avoid missed wakeup with fiber scheduler and Fiber.blocking. (#6588)Samuel Williams
2022-10-18Adjust indents [ci skip]Nobuyoshi Nakada
2022-10-17thread_sync.c: Clarify and document the behavior of timeout == 0Jean Boussier
2022-08-18Implement SizedQueue#push(timeout: sec)Jean Boussier
2022-08-06Adjust styles [ci skip]Nobuyoshi Nakada
2022-08-04thread_sync.c: pass proper argument to queue_sleep in rb_szqueue_pushJean Boussier
2022-08-02Implement Queue#pop(timeout: sec)Jean Boussier
2022-07-26Rename rb_ary_tmp_new to rb_ary_hidden_newPeter Zhu
2022-07-21Expand tabs [ci skip]Takashi Kokubun
2022-03-30Prefix ccan headers (#4568)Nobuyoshi Nakada
2021-12-15[DOC] Improve Thread::Queue.new docs [ci skip]Victor Shepelev
2021-11-28Suppress address-of-packed-member warning by gccNobuyoshi Nakada
2021-09-17Add WB_PROTECTED to mutexesJohn Hawthorn
2021-08-02Using RBOOL macroS.H