google c++多執行緒面試題
有四個執行緒1、2、3、4。執行緒1的功能就是輸出1,執行緒2的功能就是輸出2,以此類推………現在有四個檔案abcd。初始都為空。現要讓四個檔案呈如下格式:
a:1 2 3 4 1 2….
b:2 3 4 1 2 3….
c:3 4 1 2 3 4….
d:4 1 2 3 4 1….
請設計程式。
網上居然少有合適答案,有個別還行,但是很繁瑣(面試時間有限,不會只有一題)。下面是我的答案。
#include
#include
#include
#include
#include
using namespace std;
struct sbufferinfo
buffers[4];
void worker(int t)
else}}
}int main()
{for (int i = 0; i < 4; ++i)
buffers[i]._previd = (3 + i) % 4;
std::thread t1(worker, 0);
std::thread t2(worker, 1);
std::thread t3(worker, 2);
std::thread t4(worker, 3);
t1.join();
t2.join();
t3.join();
t4.join();
for (int i = 0; i < 4; ++i)
cout << buffers[i]._buffer << endl;
多執行緒面試題
題目 主線程執行10次,子執行緒執行10次,此過程重複50次 package com.thread.test function 主線程執行10次,子執行緒執行10次,此過程重複50次 public class threadproblem start for int j 0 j 50 j class ...
面試題 多執行緒
現有程式同時啟動了4個執行緒去呼叫testdo.dosome key,value 方法,由於testdo.dosome key,value 方法內的 是先暫停1秒,然後再輸出以秒為單位的當前時間值,所以,會列印出4個相同的時間值,如下所示 4 4 1258199615 1 1 1258199615 ...
多執行緒面試題
執行緒池的優點?執行緒是稀缺資源,使用執行緒池可以減少建立和銷毀執行緒的次數,每個工作執行緒都可以重複使用。執行緒池為執行緒生命週期開銷問題和資源不足問題提供了解決方案。可以根據系統的承受能力,調整執行緒池中工作執行緒的數量,防止因為消耗過多記憶體導致伺服器崩潰。public threadpoole...