the issue with a best practices guide on this subject is it will be dominated by edge cases. The common case should be "don't produce any threads".
That being said, I commented on a jira somewhere about LinkedBlockingQueues used in so many producer/consumer style processors and possibly needing a library to have some consistency in using those queues in a consistent thread safe manner. Also, I'm not quite sure of what you mean by taking liberties? On Mon, Nov 16, 2015 at 7:39 PM, Oleg Zhurakousky < [email protected]> wrote: > Guys > > I am noticing many modules where we have things like "new > Thread(..).start()”, creation of new executors and schedulers, > Thread.sleep(..) etc.,. I am sure many would agree that taking such > liberties with Threads will have consequences (not IF but WHEN) > On several threads several of us mentioned a “must read” for anyone who is > getting into concurrent code - > http://ptgmedia.pearsoncmg.com/images/9780321349606/samplepages/9780321349606.pdf > and indeed we can/should definitely grab some best practices from this book. > > At least we can start from what’s our strategy around thread management > for NAR developers? Basically should/should not a user create Threads, > Executors, Schedulers etc. > > Cheers > Oleg >
