lp://qastaging/~gpr/linuxdcpp/sync
Created by
Gennady Proskurin
and last modified
Improving multi-thread synchronization
- Get this branch:
- bzr branch lp://qastaging/~gpr/linuxdcpp/sync
Only
Gennady Proskurin
can upload to this branch. If you are
Gennady Proskurin
please log in for upload directions.
Branch merges
Propose for merging
No branches
dependent on this one.
- LinuxDC++ Team: Pending requested
-
Diff: 489 lines (+171/-91)12 files modifieddcpp/Atomic.h (+122/-0)
dcpp/BufferedSocket.cpp (+3/-3)
dcpp/BufferedSocket.h (+5/-1)
dcpp/Client.cpp (+6/-6)
dcpp/Client.h (+14/-6)
dcpp/CriticalSection.h (+7/-27)
dcpp/Pointer.h (+4/-4)
dcpp/Semaphore.h (+5/-2)
dcpp/ShareManager.cpp (+3/-3)
dcpp/ShareManager.h (+2/-1)
dcpp/Thread.cpp (+0/-4)
dcpp/Thread.h (+0/-34)
Related bugs
Bug #617021: Semaphore potentially may underflow and become negative | Medium | Confirmed |
|
Bug #617591: Pointer.h/intrusive_ptr_base class is too heavy-weight | Medium | Confirmed |
|
Bug #617757: portable FastCriticalSection implementation | Low | Confirmed |
|
Bug #617988: atomic counters implemented | Low | Confirmed |
|
Related blueprints
Branch information
Recent revisions
- 391. By Gennady Proskurin
-
Remove unused include <sched.h>, which was used for sched_yield() earlier.
- 388. By Gennady Proskurin
-
Implement exchange() function for Atomic template (only for memory_
ordering_ strong for now).
It assigns new value to atomic, returns old value. - 385. By Gennady Proskurin
-
Implement "strong memory ordering" variant of Atomic template.
For counters in "struct Counts" "weak" variant is sufficient. - 383. By Gennady Proskurin
-
include <boost/
detail/ atomic_ count.hpp> -> <boost/ smart_ptr/ detail/ atomic_ count.hpp>
The later header is garanteed to have necessary memory barrier for refcounting.
For now, it is no-op (it is the same header).
Branch metadata
- Branch format:
- Branch format 6
- Repository format:
- Bazaar pack repository format 1 (needs bzr 0.92)