pthreads

    2熱度

    1回答

    我需要重複發送和接收來自套接字的UDP數據報。我的想法是產生兩個線程,一個負責發送,另一個負責接收。只有一個線程可以同時等待阻塞recv()而另一個線程在同一個套接字上執行send()時,整個想法纔有意義。 我做了一些谷歌搜索,發現這太問題:Are parallel calls to send/recv on the same socket valid?接受的答案提到send()和recv()是線

    1熱度

    3回答

    我有三個類,我們稱它們爲A,B和HardwareDriver。每個類都有一個實例。 a和b運行在兩個不同的線程中。他們都通過HardwareDriver的一個實例訪問硬件。喜歡的東西: Class A { ... }; Class B { ... }; Class HardwareDriver { public: int accessHardware(); };

    0熱度

    2回答

    主線程產生> 1個線程,並且它們每個都可以返回一個錯誤值。如果發生這種情況,其他線程繼續進行是沒有意義的,因此應該取消它們。 所以,我想我的主線程: 加入與哪個線程首先完成; 檢查此線程是否返回了錯誤,如果是,請取消所有其他線程。 但是,pthread_join要求我指定要加入哪個線程。如果我打電話,例如,pthread_join(thread1, thread1_ret)和thread2完成,出

    0熱度

    2回答

    Quoting POSIX: 的pthread_cond_broadcast()或pthread_cond_signal()功能可以由一個線程它是否當前擁有那個線程調用pthread_cond_wait()或pthread_cond_timedwait()已經與在其等待狀態變量相關聯的互斥被調用;然而,如果需要可預測的調度行爲,那麼該互斥量將被調用pthread_cond_broadcast()或

    0熱度

    1回答

    我試圖使用pthread_create創建一個將運行函數的線程,但我得到的是incompatible type for argument 4 of pthread_create。 我見過關於這個問題的一些帖子,但沒有提供的解決方案沒有爲我解決它。 下面是相關的代碼: typedef struct { const char *filename; Queue *url_queue;

    0熱度

    1回答

    我工作的圖像處理項目中,我的工作就是加快細化算法的處理結構指針。 這是最初的代碼片段: - #include <iostream> #include <stdlib.h> #include <deque> #include <opencv2/imgproc/imgproc.hpp> #define ROWS 10 #define COLS 10 class Thinner { p

    0熱度

    1回答

    我正在解決有關線程的分配問題。 這是關於排序隨機小寫字符。 當它排序良好時,我打印出O標記和否,使用2個線程打印出X. 。 我需要使用信號量編寫代碼,但我不知道如何以及在哪裏編寫sempahore。 所以一旦我沒有信號寫代碼。 我現在應該添加Sempahore。但我不知道要修復哪個部分。 你能幫我嗎? 我是否必須爲信號燈製作更多功能? 這是我在C.

    0熱度

    1回答

    沒來了有一段時間,但我堅持...... 我似乎無法找出問題所在,此代碼 logger.cpp #include "logger.h" #include <unistd.h> #include <stdlib.h> void* __logger(void* data) // dummy function { sleep(10); return NULL; } lo

    0熱度

    2回答

    總之,我一直在努力完成以下任務:我希望能夠有效地管理很多(數十億/他們不需要很長時間就能完成,但我是創建數組以進行高速處理,如果我不馬上將東西傳遞給線程,數組變得非常大以至於導致段錯誤),這些線程在必要時將數據傳遞給JNI,並且需要存儲在向量中。 我一直面臨兩個問題: 第一個是,如果我試圖產卵比約45線程都同時運行JNI,Java的崩潰了。如果他們沒有在同一時間運行,它可以正常工作,但我從GC得到

    1熱度

    1回答

    pthread_cond_wait允許我們等待,直到條件變量獲得信號。 但是,是否有機會等到兩個條件變量中的任何一個發出信號? 我問的原因是我有以下情況:我有42個線程和兩個可能的謂詞,這些線程可能會繼續他們的工作。如果滿足這兩個謂詞中的任何一個,他們可以繼續工作。 但是,問題是,當這些謂詞中的一個被滿足時,那麼只有一個線程和一個特定的線程,而不是任何線程都可以繼續工作。如果另一個滿足,則應該恢復