Article View: pl.comp.lang.c
Article #309637Re: Jak najlepiej dzielić dane wspólne dla wątków?
From: Borneq
Date: Mon, 29 Jan 2018 18:51
Date: Mon, 29 Jan 2018 18:51
17 lines
1970 bytes
1970 bytes
W dniu 29.01.2018 o 18:57, Wojciech Muła pisze: > Po pierwsze masz poważny błąd FinderForBlock::execute. W obrębie > mutexu zwiększasz index, ale po wyjściu z blokady czytasz to pole > i to dwa razy. Po mutex.unlock() inne wątki mogą zmienić index. Nie zwróciłem uwagi, chyba w oryginale mam przepisanie do zmiennej lokalnej i nie ++ ale robię +=5, ale ważniejsze następne: > Ale ogólnie to nie potrzebujesz mutexa. Wątki mają działać na rozłącznych > zakresach wektorów, wiesz na ilu wątkach to robisz (masz nThreads, nie). > Wyznacz sobie zakresy dla każdego wątku i tyle. Wtedy metoda execute miałaby > postać: Dzięki za dobry pomysł!, to upraszcza sprawę. Muteksy mogłyby być użyteczne gdybyśmy nie mogli oszacować czy jeden wątek będzie dużo różnił się w czasie trwania od innych, ale średnio transakcje są dość równego rozmiary, gdy jedna większa to sto innych ją wyrówna.
Technical Details
Message-ID:
<p4nqgc$6rs$1@node1.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailReferences:
<p4n3n1$fom$1@node1.news.atman.pl> <ccc1fb76-71bd-49f2-a9bf-e210f9071e5c@googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Borneq <borneq@antyspam.hidden.pl> Newsgroups: pl.comp.lang.c Subject: Re: Jak najlepiej dzielić dane wspólne dla wątków? Date: Mon, 29 Jan 2018 19:51:57 +0100 Organization: ATMAN - ATM S.A. Lines: 17 Message-ID: <p4nqgc$6rs$1@node1.news.atman.pl> References: <p4n3n1$fom$1@node1.news.atman.pl> <ccc1fb76-71bd-49f2-a9bf-e210f9071e5c@googlegroups.com> NNTP-Posting-Host: public-gprs350495.centertel.pl Mime-Version: 1.0 X-Trace: node1.news.atman.pl 1517251916 7036 37.47.0.96 (29 Jan 2018 18:51:56 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Mon, 29 Jan 2018 18:51:56 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 In-Reply-To: <ccc1fb76-71bd-49f2-a9bf-e210f9071e5c@googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit