Commit Graph

353 Commits

Author SHA1 Message Date
levlam
ed1457b69b Use std:🧵:native_handle() only for MSVC, because it is unsafe to assume native_handle_type otherwise. 2022-11-26 02:48:43 +03:00
Eric Kotato
b281a719fa
Fix MinGW threading compilation error (#2210) 2022-11-26 00:36:48 +03:00
levlam
683627a350 Make all operator bool const and nonexcept. 2022-10-09 19:30:18 +03:00
levlam
e984706622 Add td:🧵:get_id(). 2022-10-04 22:48:55 +03:00
levlam
628b8901bc Optimize logging to NULL on Windows. Fixes #2112.
It is possible to do only about 100 writes to NULL per second, which is about 8-80 times less than even performance of writes to a console app.
2022-10-03 15:11:23 +03:00
levlam
cb70993b90 Fix buggy behavior of pthread_setaffinity_np/pthread_getaffinity_np on NetBSD. 2022-09-17 23:25:42 +03:00
levlam
9bf5d57851 Add TD_HAVE_THREAD_AFFINITY macros. 2022-09-17 21:58:00 +03:00
levlam
b8abc6c19e Support CPU affinity on NetBSD. 2022-09-17 21:48:16 +03:00
levlam
b47fce0d95 Support CPU affinity on FreeBSD. 2022-09-17 14:45:42 +03:00
levlam
9d5c151a3f Use DWORD as thread::id on Windows. 2022-09-17 13:21:04 +03:00
levlam
0cc3fb0e9d Include pthread.h on OpenBSD for pthread_t definition. 2022-09-17 01:37:05 +03:00
levlam
b49b669ac1 Support affinity mask on Linux. 2022-09-14 15:33:16 +03:00
levlam
0eddd8d405 Add thread::set_affinity_mask/get_affinity_mask. 2022-09-14 14:38:14 +03:00
levlam
5f98548e02 Use STL thread only on Windows. 2022-09-14 14:19:09 +03:00
levlam
273ae92a14 Use HANDLE as thread id on Windows. 2022-09-14 14:18:42 +03:00
levlam
03db53281c Remove this_thread::yield for TD_THREAD_UNSUPPORTED. 2022-09-14 14:10:33 +03:00
levlam
28594d38e4 Add thread::send_real_time_signal. 2022-08-22 00:46:22 +03:00
levlam
959c7261c1 Fix function name. 2022-08-22 00:17:53 +03:00
levlam
96cca84a60 Remove source from next_utf8_unsafe. 2022-08-19 16:37:44 +03:00
levlam
abc9ed2cd9 Minor fixes. 2022-07-14 18:38:48 +03:00
Arseny Smirnov
bf80c43c05 fix CE 2022-07-14 18:36:46 +04:00
Arseny Smirnov
f4c97b25ec add Mutex wrapper around std::mutex and use it instead of SpinLock 2022-07-14 16:27:06 +04:00
Arseny Smirnov
7ddc3099f6 remove td::this_thread::yield function. usleep_for(1) used instead 2022-07-14 16:15:17 +04:00
levlam
4652292037 Use count instead of find if appropriate. 2022-05-01 23:03:06 +03:00
levlam
1f38124861 Use FlatHashSet. 2022-03-11 21:38:48 +03:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
26d2ee649d Add some missing new lines at the end of files. 2021-12-27 14:03:50 +03:00
levlam
957670aa0d Immediately close non-connected sockets. 2021-12-16 23:38:44 +03:00
levlam
1a98ac8004 Don't use min/max as variable names. 2021-12-15 20:55:03 +03:00
levlam
1a9c6fa51c Add more logging. 2021-12-10 13:27:24 +03:00
levlam
106797f7f0 Improve private field names. 2021-12-10 13:07:55 +03:00
levlam
1bb9b7dfa9 Update clang-format to 13.0.1. 2021-12-10 00:27:13 +03:00
levlam
eb346f5573 Return both first and last error from mkpath. 2021-11-05 10:10:11 +03:00
levlam
c5a2f1570d Remove superflous endif comments. 2021-10-25 10:05:15 +03:00
levlam
9f44816a62 Minor improvements. 2021-10-21 12:51:16 +03:00
levlam
1e49f6dc13 Use auto as variable type if it is initialized with a cast. 2021-10-20 01:27:02 +03:00
levlam
44a186c7c1 Minor improvements. 2021-10-18 19:26:14 +03:00
levlam
01976bed53 Minor warning fixes. 2021-10-18 15:37:21 +03:00
levlam
81b38d5607 Mark move constructors/assignment operators noexcept. 2021-10-18 14:36:15 +03:00
levlam
f35afe23c8 Minor warning fixes. 2021-10-18 12:57:13 +03:00
levlam
0782f56408 Use uint32 instead of unsigned int if possible. 2021-10-17 22:56:40 +03:00
levlam
c7ce933520 Improve Windows 11 detection. 2021-10-13 14:01:23 +03:00
levlam
61c3a2bcf5 Remove TD_EXPERIMENTAL_WATCH_OS. 2021-09-24 13:41:22 +03:00
levlam
d6f3d9f08a Use error code 400 instead of small error codes. 2021-09-24 10:59:51 +03:00
levlam
5a85c8a95b Improve error message. 2021-09-14 12:16:29 +03:00
levlam
f0180b6132 Suppress warning about an empty file. 2021-09-02 11:51:33 +03:00
levlam
bfd76964ea Fix some GCC warnings on Windows. 2021-09-01 19:26:18 +03:00
levlam
84ad2e5b19 Remove redundant semicolons. 2021-08-30 23:27:32 +03:00
levlam
c45535d607 Fix warning. 2021-07-20 03:00:16 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00