[問題] threadpool內的程式沒有啟動@@?
各位板友大家好,
之前用C++寫的計算程式目前有一點問題,
發生的機率不高,但發生了就會導致資料少了一點。
查證後發現是在使用thread pool時,
程式貌似沒有順利被啟動。
片段程式碼如下:
QueueUserWorkItem( DataThread, &threadData, WT_EXECUTEDEFAULT );
DWORD WINAPI DataThread(PVOID pContext)
{
..(略
pThreadData->pArchiver->AData( pThreadData->st );
pThreadData->pArchiver->BData( pThreadData->st );
pThreadData->pArchiver->CData( pThreadData->st );
pThreadData->pArchiver->DData( pThreadData->st );
return 1;
}
但有時候會發生AData有運算,但B~DData程式皆沒被執行,
會知道是因為每個程式開始時我都會寫入誰被啟動的資訊至記事本。
目前是每15分鐘時會啟動DataThread一次。
請問有板友遇過相同的問題嗎?又是如何解決的呢!?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.3.236
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1430884218.A.1EE.html
→
05/06 15:43, , 1F
05/06 15:43, 1F
→
05/06 18:35, , 2F
05/06 18:35, 2F
→
05/07 11:49, , 3F
05/07 11:49, 3F
→
05/07 11:50, , 4F
05/07 11:50, 4F
→
05/07 11:50, , 5F
05/07 11:50, 5F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章