15f6ae40ac
Reland C++11 "shared_lock" with iter remove fix
...
On iterator remove, the iterator will trade the read lock for a write
lock, and trade back for a read lock once the remove has been completed.
2024-01-01 17:16:11 +09:00
611287b377
Revert "Impl "RWLock" for use in TSLQueue"
...
This reverts commit cf27a6bb76
.
The use of "shared_lock" in TSLQueue is unsafe because of two things:
- The TSLQueue iterator takes a "read" lock.
- The TSLQueue iterator can erase the current element.
2023-07-22 17:28:33 +09:00
cf27a6bb76
Impl "RWLock" for use in TSLQueue
...
This project supports C++11, and std::shared_lock was made available in
C++17, thus a "shared_spin_lock" was created with similar functionality.
This "shared_spin_lock" is used in TSLQueue.
2023-07-22 16:33:09 +09:00
64a0995e21
Fix CMakeLists.txt, handle -Weffc++ warnings
2023-07-22 13:25:43 +09:00
80e67e845c
Distinguish manual variables and pkgconf variables
...
Variables checked to manually set libsodium paths have been changed to
prevent conflict with variables set by searching for libsodium via
pkgconfig.
2020-01-16 11:31:22 +09:00
ed20c28ed0
Allow manually setting dependency libsodium paths
2020-01-16 11:27:19 +09:00
f588d409c9
Truncate "UDPConnection" to "UDPC"
2020-01-09 16:57:01 +09:00
58493ee936
Fix UnitTests using C++17 (now uses C++11)
2019-12-11 21:24:28 +09:00
ece17e1aca
Drop support from C++17 to C++11
...
std::optional replaced with Entry in TSLQueue (which is basically a poor
man's optional).
2019-12-11 20:00:48 +09:00
4cfe35ecd1
libsodium support is now optional
...
Packet struture has been changed to support UDPC without libsodium
sending packets to UDPC with libsodium.
2019-11-18 17:37:03 +09:00
90b36e3061
Convert NetworkTest to C from C++
2019-11-13 11:47:53 +09:00
00c1be07dc
Replace c_impl, remove rust_binding, with cpp_impl
2019-11-11 13:08:36 +09:00
1eed614ded
Add buildgen rust binding
2019-04-17 15:15:53 +09:00
d38c7ac105
Add NetworkTest executable
...
To be used to debug UDPConnection.
2019-03-04 15:20:22 +09:00
a0134b7cb3
Begin work on HashMap, minor fixes
2019-02-04 17:21:49 +09:00
bfc704d429
Minor fixes to UnitTest, Defines header
2019-01-29 14:50:12 +09:00
32e2503bd0
Change init to return ptr, some error handling
2019-01-29 11:53:39 +09:00
599ac8a23e
Add unit tests, some fixes to Deque.
2019-01-27 15:09:38 +09:00
dd984b85a6
Finish impl of Deque, testing required
2019-01-26 20:44:31 +09:00
909fe2e744
Add some init/destruct stuff, thread stuff too
2019-01-26 16:22:31 +09:00
ec084d85cc
Init commit skeleton project
2019-01-26 12:52:10 +09:00