On Thu, Feb 21, 2008 at 10:16 PM, Nicholas Nethercote <[EMAIL PROTECTED]> wrote: > On Thu, 21 Feb 2008, Bart Van Assche wrote: > > >> One of the things I have come to realise in the past year or so > >> is what a terrible programming model explicit shared-memory parallelism > >> is. It's simply too hard for humans to understand and reason about > >> (in all but the most trivial of applications): even small threaded > >> programs are extremely hard to make sense of. > > > > It depends. Although understanding concurrent activities is always > > hard, it is possible to write multithreaded software that is > > relatively easy to read and to maintain. What I have learned during > > the past ten years about writing multithreaded software is a.o. the > > following: > > So basically you need various higher-level abstractions layered over > pthreads, plus a strong dose of programmer discipline. So it's doable, but > hoping everyone will get it right is optimistic.
My opinion is that software developers should do a serious effort at preventing problems and that they should not just rely on error detection tools. The same holds for memory leaks / dangling pointers: in large applications it is important that there is a clear strategy with regard to ownership of dynamically allocated memory. Sophisticated memory checking and leak checking tools do not provide a solution in case there is no clear ownership policy in the software being checked. Bart. ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Valgrind-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/valgrind-developers
