condition-variable

    2熱度

    2回答

    我有一個在Ubuntu上使用git://github.com/raspberrypi/tools.git工具在RaspberryPi(3)上交叉編譯的項目。我想與condition_variable一起使用線程同步,但wait_for似乎不會釋放提供給它的mutex上的鎖定,如文檔中所述。下面是轉載了樹莓派的問題簡化代碼(有過多的日誌記錄,以更好地可視化的問題): int main(int arg

    0熱度

    1回答

    我需要一些幫助來實現併發C++編程。 我有名字的文件,命名爲"names.txt",格式如下: 0 James 1 Sara 2 Isaac 而且我有一個名爲"op.txt"另一個文件,該文件載有關於地名的一些操作的文件,格式如下: 0 1 + // this means add Sara to James and store it in 0 position 1 2 $ // this

    1熱度

    4回答

    通常如果我想模擬一些工作或等待確切的時間間隔,我使用condition_variable::wait_for或最差的thread::this_thread::sleep_for。但是condition_variabledocumentation指出wait_for或wait_until方法可能會阻止比請求更長的時間。 該功能可能會阻塞更長比timeout_duration由於調度或者資源爭用延遲。

    0熱度

    1回答

    我在使用非常基本的Windows編程時遇到了麻煩,實現了一個簡單的生產者/消費者系統。 我的結構: typedef struct FILE_BUFFER { //Circular buffer of max size BUF_SIZE INT count; //buffer size LPTSTR buf[BUF_SIZE]; //actual buffer of file

    0熱度

    2回答

    我試圖使用C++11的std::condition_variable來處理UI線程&工作者線程之間的數據事務。 情況: m_calculated_value是其中複雜的邏輯後算出的值。這是UI線程觸發事件所必需的。 UI線程調用MyClass::GetCalculatedValue來獲取m_calculated_value的值,該值需要由工作程序線程函數MyClass::ThreadFunctio

    1熱度

    1回答

    所以我有這個while循環,做了一些工作,多線程,我想,只要所有線程正在它的工作,是這樣的: while(*threads are working*) { pthread_mutex_lock if(stack is not empty) { pthread_cond_broadcast *critical work* pthread_mutex_unlock

    1熱度

    1回答

    我目前正在學習條件變量,我開始明白了。但是從here代碼: void print_id (int id) { std::unique_lock<std::mutex> lck(mtx); while (!ready) cv.wait(lck); // ... std::cout << "thread " << id << '\n'; } void go

    2熱度

    1回答

    如何在C#的system.threading.monitor類中實現Monitor.Wait()方法? https://www.codeproject.com/Articles/28785/Thread-synchronization-Wait-and-Pulse-demystified 概念,我構想是這樣的: class Monitor { public static Wait(ob

    -1熱度

    1回答

    雖然在工作線程中使用一個簡單的互斥鎖和條件變量,但我的程序會收到一些罕見且零星的線程匱乏錯誤,但我想阻止它。 以下是我正在做的一個簡單的例子。有4個工作線程調用「Producer」和一個調用prod.getTasks()的主線程。 此代碼是「無死鎖」,但由於錯誤,顯然不是「無飢餓」。 當我拿到檢測線程飢餓或時鐘飛躍(管家三角洲=1m18s317ms137μs765ns)錯誤是: A)由於生產者線程

    2熱度

    1回答

    對這個問題的回答是錯誤的,因爲它有機會發生死鎖。 Condition Variable - Wait/Notify Race Condition 我沒有找到解決競態條件或死鎖問題的解決方案。 想象一下,我們有兩個線程。現在的目標如下。 first condition: Thread 1 Waits Thread 2 Notifies second condition: Thread 2