Path: csiph.com!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c++ Subject: Re: good reference on threads Date: Sat, 12 Jun 2021 21:47:30 -0700 Organization: None to speak of Lines: 32 Message-ID: <875yyiz7z1.fsf@nosuchdomain.example.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: reader02.eternal-september.org; posting-host="65b6a332b307b3c1944896ee57e2bbf3"; logging-data="10230"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/YL+YX86FkOf2bSFL2C9PH" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) Cancel-Lock: sha1:Fx/FvHe/d2OMVMdXSgDScEcC0Xc= sha1:LKhd+OcjjOAbRkUmx/OLcdS4De8= Xref: csiph.com comp.lang.c++:80364 Cholo Lennon writes: > On 6/11/21 12:03 AM, Lynn McGuire wrote: >> On 6/10/2021 4:59 PM, Lynn McGuire wrote: >>> Is there a good reference on threads ?  I would like to delegate >>> the writing of our binary file to a background thread if possible.  >>> Our Win32 Windows desktop program is mostly MFC with about 450,000 >>> lines of C++ code. >>> >>> I do suspect that this is not doable, due to the nature of the data >>> being used for dialogs and such. >>> >>> Thanks, >>> Lynn >> I found "C++ Concurrency in Action, 2nd Edition" by Williams, >> Anthony. Has anyone read this and found it to be a good education on >> threads ? >> https://www.amazon.com/C-Concurrency-Action-Anthony-Williams/dp/1617294691/ > > I have the 1st version of that book, it's a very good one on the > subject. AFAIK it is "the" book about C++ multi-threaded programming. Amazon doesn't have it in Kindle format, but the second edition (2019) is available from the print, ebook, and audio formats. I haven't read it, so I can't comment on how good it is. https://www.manning.com/books/c-plus-plus-concurrency-in-action-second-edition -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com Working, but not speaking, for Philips Healthcare void Void(void) { Void(); } /* The recursive call of the void */