Article View: pl.comp.lang.c
Article #309234Jak wymusić zakończenie wątku?
From: Borneq
Date: Thu, 13 Apr 2017 14:27
Date: Thu, 13 Apr 2017 14:27
16 lines
1557 bytes
1557 bytes
Używam #include <thread> które to wątki działają i na Linuksie i na Windows.
Mam coś takiego : za pomocą dużej ilości wątków zapisuję do bazy Neo4j.
Raz na jakiś czas zdarza się że wątek blokuje się na zapytaniu.
Wątek główny wie, jak dawno temu wątek poboczny usiłował coś zapisać do
bazy, wtedy po przekroczeniu czasu mógłby go zrestartować.
Ale
jak zrobię delete threads[i], wtedy kończy się cały program!
bo jest
~thread()
{
if (joinable())
std::terminate();
}
a join trwał będzie w nieskończoność.
Czy pobrać Id wątku i zabić go procedurą zależną od systemu
operacyjnego? gwałtownie zabity może mieć pootwierane jakieś zasoby.
Technical Details
Message-ID:
<oco1sa$gmq$1@node1.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Borneq <borneq@antyspam.hidden.pl> Newsgroups: pl.comp.lang.c Subject: Jak wymusić zakończenie wątku? Date: Thu, 13 Apr 2017 16:27:21 +0200 Organization: ATMAN - ATM S.A. Lines: 16 Message-ID: <oco1sa$gmq$1@node1.news.atman.pl> NNTP-Posting-Host: 91.239.205.105 Mime-Version: 1.0 X-Trace: node1.news.atman.pl 1492093642 17114 91.239.205.105 (13 Apr 2017 14:27:22 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Thu, 13 Apr 2017 14:27:22 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 X-Mozilla-News-Host: news://news.atman.pl:119 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit