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

Related bugs

Related blueprints

Branch information

Owner:
Gennady Proskurin
Project:
LinuxDC++
Status:
Mature

Recent revisions

391. By Gennady Proskurin

Remove unused include <sched.h>, which was used for sched_yield() earlier.

390. By Gennady Proskurin

Remove unused Thread::safeExchange function and associated mutex.

389. By Gennady Proskurin

Use Atomic<bool> for "refreshing" variable.

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.

387. By Gennady Proskurin

Remove Thread::safeInc/safeDec functions. They are unused now.

386. By Gennady Proskurin

Change BufferedSocket::sockets to Atomic (strong variant).

385. By Gennady Proskurin

Implement "strong memory ordering" variant of Atomic template.
For counters in "struct Counts" "weak" variant is sufficient.

384. By Gennady Proskurin

Remove unused Thread::yield functions.

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).

382. By Gennady Proskurin

Recheck predicate after wakeup of cond_wait/cond_timedwait

Branch metadata

Branch format:
Branch format 6
Repository format:
Bazaar pack repository format 1 (needs bzr 0.92)
This branch contains Public information 
Everyone can see this information.