🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #309637

Re: Jak najlepiej dzielić dane wspólne dla wątków?

#309637
From: Borneq
Date: Mon, 29 Jan 2018 18:51
17 lines
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-mail
References: <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