summaryrefslogtreecommitdiffstats
path: root/library/cpp/threading
Commit message (Collapse)AuthorAgeFilesLines
* Intermediate changesrobot-piglet2025-12-181-2/+2
| | | | commit_hash:c4281bc281cdaef6bf0188500e82848c582cc5ad
* Intermediate changesrobot-piglet2025-12-171-4/+24
| | | | commit_hash:b8e5120d089fefb3429f136699614ed9ea813c21
* Use generic thread-local value for kernel/groupattrs, crash context and ↵kulikov2025-11-283-18/+44
| | | | | | | | | | | | | eventlog scope - fix StdThreadLocalImpl -- make static state refcounted, there is no guarantee that static fields will outlive threads or TThreadLocalValues; - replace thread local values to generic local storage value in some places; - call runtime Init and replace local values factory; - don't disable NCurrentThreadEventlog for ytxx runtime, it should now work; - ensure generic local storage values are allocated after runtime init; - use function-scope static variables to prevent issues with order of construction and destruction; - basesearch now almost works with coroutines (with NProfile disabled). commit_hash:7fde81591b0dbc3a53b8d1cb11bb96930a2e9a80
* Switch generic tls to thread_local-based implkulikov2025-11-261-1/+1
| | | | | After this, it becomes possible to zerodiff replace thread\_local variables with generic local values. Replace default TThreadLocal with generic will lead to it's destruction on thread exit, but it seems to be more correct behavior (e.g., avoid leaks on thread pool restart). commit_hash:6e5a0908ca239c1bac3ce6ba47de9e53290d6211
* TThreadLocalValue over standard thread_localskulikov2025-11-251-0/+122
| | | | | | | | | | | | | | Current TThreadLocal implementation doesn't destroy objects on thread exit (so we can't replace thread\_local tls value with it, and with TGenericLocalValue too), standard thread\_local values can't be class members. So try to reimplement TThreadLocalValue: - instead of adressing by thread id, address objects by uniq object id in thread\_local deque of all objects of current type; - use hashmap of all existing perthread deques to destroy objects with their TThreadLocal; - try to make object ids flat; - no complex lookup inside and no contention between tls.Get calls; - ShortLivedThreads ut now works; - some fixes in Trace ut, make threads outlive tls value; - benchmark results <https://nda.ya.ru/t/agWa9PW67NYAAK>, looks better than all others; - probably should switch to this implementation by default and remove old. commit_hash:262ce4d363751f577373a452a0c2c84d1fe5b79c
* Generic thread (yt fiber, etc) local storagekulikov2025-11-183-1/+109
| | | | commit_hash:cc357d273b7ce5c911d194dd51fae5668877693c
* Better commentthegeorg2025-11-071-1/+5
| | | | commit_hash:27b70d710c76793e58a4ed81dcd053907e389d85
* Try to prevent slicing in `co_return ex;`thegeorg2025-11-062-1/+11
| | | | commit_hash:348f2fb14a4a93cfa3c8504419d021c1f41e4b8f
* ysize -> size.akhropov2025-10-111-1/+1
| | | | commit_hash:5be5816fa0d06087b51636b3acfaf53350e750da
* Fix a potential memory leakakhropov2025-10-111-2/+2
| | | | commit_hash:17b4088b80f1a7446525ed8eebf0566b3e3a7888
* Add return lvalue test (and fix corresponding bugs)thegeorg2025-07-162-2/+7
| | | | commit_hash:f776eaac24e9bbe1abac58a171d9895556c43dd8
* coroutine_traits: Implicitly convert returned std::exception into erroneous ↵thegeorg2025-07-152-21/+89
| | | | | | TFuture commit_hash:80a673361a58719a241d3536cd4ffdd7d1a274ea
* Fix co_await argument dependent lookup for TFuture<T>snaury2025-07-014-16/+84
| | | | commit_hash:d3da906e0b3f303ead8bf1257a3cdceed2778d90
* Upver wine 10.8nechda2025-06-192-3/+1
| | | | commit_hash:db0a0308d356c8dca2520f3881de2615edcc4455
* Fix object destruction order when using TFuture<T> coroutinessnaury2025-06-193-42/+157
| | | | commit_hash:683c797584872e45e8df2ad7c663f1f1ebb253e3
* TTryGuard for queue locknae2022025-06-041-39/+58
| | | | commit_hash:027b7f086dcb0c574896ea5bd2c4958bf82914cf
* rm unused includes + fix memory_ordertobo2025-05-311-3/+1
| | | | commit_hash:bb222740eb5e56281bc138da43a8480640c40489
* AtomicTryLock() / AtomicUnlock() => TSpinLocktobo2025-05-301-27/+17
| | | | commit_hash:d6f16e427045049e4e5815d09a949cc721a20c79
* Intermediate changesrobot-piglet2025-04-141-28/+30
| | | | commit_hash:6452cbd39bd37ef1f2bd6be70bf9ceb91fb08a26
* List captured variables explicitly when 'this' has been implicitly captured ↵akhropov2025-04-102-4/+4
| | | | | | to avoid compiler warnings. commit_hash:6dda5bad9e3d887f91817bd4fdab95b66f3db001
* Fix TTbbLocalExecutor::GetWorkerThreadId. Enable ↵akhropov2025-04-072-4/+23
| | | | | | test_fit_on_scipy_sparse_spmatrix on Windows. commit_hash:c52cdc5529aff5cda1cbd11be2852647736ceb49
* More detailed description of GetWorkerThreadId. Remove comments duplicationakhropov2025-04-062-3/+5
| | | | commit_hash:19ac2b49b9bb7ac988b229e4d5c4c4ed6f75b138
* Add more IWYU export pragmas in library/*vadim-xd2025-04-061-0/+2
| | | | | Followup for rXXXXXX - reduce false-positives of include cleaner commit_hash:03bb3b1817067ed576faa57c597737b01d63d2e4
* [library/cpp/threading] Add convenience methods to schedule functions in ↵sskvor2025-03-243-62/+167
| | | | | | TTaskScheduler commit_hash:b8c3ae8e8ca6b0fea0bbf820f40513da41a242f8
* Fix cancellation in unifetcherjolex0072025-02-274-0/+257
| | | | commit_hash:909fa7aadbf673448dbc709b19d2088963b40404
* [libray/cpp/threading] Fix typosskvor2024-11-051-3/+3
| | | | commit_hash:f76f3edfa160fba90d0f8d594211fa35c6eb6077
* Intermediate changesrobot-piglet2024-10-151-0/+1
| | | | commit_hash:a9d505ad0eca8d52e322f9b3f5daaa1968f65b7b
* fix tsan warnings in library/cpp/threading unit testskulikov2024-09-121-5/+5
| | | | | | | | | - blocking_counter: fix destroy order; - thread_local: Head_.load must use std::memory_order_acquire to match memory_order_release in compare_exchange and ensure all writes are visible; also fix always null node value in first compare_exchange call; - work_stealing: use atomics. commit_hash:53f01a16bb40dd3eb890b0eb60388ecb0ce9c908
* Fix LSP in future-inl.hk-vukolov2024-08-191-0/+1
| | | | 71ff0471827f8bde6feb9549ead39faefb7f9b0f
* Intermediate changesrobot-piglet2024-08-062-16/+60
|
* Intermediate changesrobot-piglet2024-08-021-29/+33
|
* Intermediate changesrobot-piglet2024-08-013-0/+201
|
* Intermediate changesrobot-piglet2024-07-295-0/+195
|
* TFuture add IsReady methodilnurkh2024-07-263-0/+48
| | | | | | | | IsReady returns true if exception or value was set. allows to check readiness without locking cheсker-thread NOTE: returns true even if value was extracted from promise good replace for HasValue() || HasException() b2d64093e25cef5a350dfebe784c449203a5b383
* Intermediate changesrobot-piglet2024-07-192-0/+2
|
* Intermediate changesrobot-piglet2024-04-021-4/+0
|
* feat contrib: aiogram 3armenqa2024-01-1985-1701/+0
| | | | Relates: https://st.yandex-team.ru/, https://st.yandex-team.ru/
* Library import 5, delete go dependencies (#832)AlexSm2024-01-041-2/+2
| | | | | * Library import 5, delete go dependencies * Fix yt client
* Import libs 4 (#758)AlexSm2023-12-273-5/+27
|
* Add Drain method for TBlockingQueuetytskiy2023-12-112-0/+109
|
* Try enable TSAN on report unit-testsnechda2023-12-082-2/+4
| | | | Включаем TSAN над юнит-тестами репорта + для реализации TLightGuard-ов делаем фолбэк на обычные гарды в режиме сборки с санитайзерами.
* External build system generator release 65robot-ya-builder2023-12-0514-42/+42
| | | | Update tools: yexport, os-yexport
* add darwin-arm64 CMakeListsdcherednik2023-11-2028-0/+305
|
* Y_FAIL->Y_ABORT at '^li'ilnurkh2023-10-171-2/+2
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* Y_VERIFY->Y_ABORT_UNLESS at ^lilnurkh2023-10-093-3/+3
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* Fix input variable missprintsvidyuk2023-08-304-0/+24
|
* All .ll files support in LLVM_BCsvidyuk2023-08-304-24/+0
|
* YT-19210: expose YQL shared library for YT.max422023-07-2924-0/+810
| | | | After this, a new target libyqlplugin.so appears. in open-source cmake build. Diff in open-source YDB repo looks like the following: https://paste.yandex-team.ru/f302bdb4-7ef2-4362-91c7-6ca45f329264
* Intermediate changesrobot-piglet2023-07-286-20/+321
|
* revert rXXXXXX (see discusstion in pr), will commit again more pci-dss ↵kulikov2023-07-2717-530/+20
| | | | friendly way