doc ru, printf() before assert in containers
This commit is contained in:
@@ -19,10 +19,50 @@
|
||||
|
||||
#include "pithreadnotifier.h"
|
||||
|
||||
//! \addtogroup Thread
|
||||
//! \{
|
||||
//! \class PIThreadNotifier pithreadnotifier.h
|
||||
//!
|
||||
//! \~\brief
|
||||
//! \~english Class for simple notify and wait in different threads
|
||||
//! \~russian Класс для простого уведомления и ожидания в различных потоках
|
||||
//!
|
||||
//! \~\details
|
||||
//! \~english
|
||||
//!
|
||||
//! \~russian
|
||||
//!
|
||||
//!
|
||||
//! \~english \section PIThreadNotifier_sec0 Synopsis
|
||||
//! \~russian \section PIThreadNotifier_sec0 Краткий обзор
|
||||
//! \~english
|
||||
//!
|
||||
//! \~russian
|
||||
//!
|
||||
//!
|
||||
//! \~english \section PIThreadNotifier_sec1 Usage
|
||||
//! \~russian \section PIThreadNotifier_sec1 Использование
|
||||
//! \~english
|
||||
//!
|
||||
//! \~russian
|
||||
//!
|
||||
//!
|
||||
//! \}
|
||||
|
||||
|
||||
PIThreadNotifier::PIThreadNotifier() : cnt(0) {}
|
||||
|
||||
|
||||
//! \~\details
|
||||
//! \~english
|
||||
//! If \a notifyOnce() has been called before, then returns immediately.
|
||||
//! If \a notifyOnce() has been called "n" times, then returns immediately "n" times,
|
||||
//! but only if wait in one thread.
|
||||
//! If many threads waiting, then if \a notifyOnce() has been called "n" times,
|
||||
//! all threads total returns "n" times in random sequence.
|
||||
//!
|
||||
//! \~russian
|
||||
//!
|
||||
void PIThreadNotifier::wait() {
|
||||
m.lock();
|
||||
while (cnt == 0) v.wait(m);
|
||||
@@ -31,6 +71,12 @@ void PIThreadNotifier::wait() {
|
||||
}
|
||||
|
||||
|
||||
//! \~\details
|
||||
//! \~english
|
||||
//! If many threads waiting, then notify randomly one.
|
||||
//! If call this "n" times, then notify any waiting threads totally "n" times.
|
||||
//!
|
||||
//! \~russian
|
||||
void PIThreadNotifier::notifyOnce() {
|
||||
m.lock();
|
||||
cnt++;
|
||||
|
||||
Reference in New Issue
Block a user