| submit a site to this category |
| wectar web site suggestions for this odp category |
| Subcategories |
|---|
| Books@ |
|
|
The "Double-Checked Locking is Broken" DeclarationURL: http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html ODP description: Details on the reasons - some very subtle - why double-checked locking cannot be relied upon to be safe. Signed by a number of experts, including Sun engineers. ![]() |
|
|
Double-checked Locking and the Singleton PatternURL: http://www-128.ibm.com/developerworks/java/library/j-dcl.html ODP description: Examines the roots of the double-checked locking idiom, why it was developed, and why it doesn't work. Page title: Double-checked locking and the Singleton pattern Page description: All programming languages have their share of idioms. Many are useful to know and use, and programmers spend valuable time creating, learning, and implementing them. The problem is that some idioms are later proven not to be all that they were purported, or to simply not work as described. Double-checked locking is one such idiom in the Java programming language that should never be used. In this article, Peter Haggar examines the roots of ... ![]() |
|
|
Writing Multithreaded Java ApplicationsURL: http://www.ibm.com/developerworks/library/j-thread.html ODP description: Introduces the Java Thread API, outlines issues involved in multithreading, and offers solutions to common problems. By Alex Roetter. Page title: Writing multithreaded Java applications Page description: The Java Thread API allows programmers to write applications that can take advantage of multiple processors and perform background tasks while still retaining the interactive feel that users require. Alex Roetter introduces the Java Thread API, outlines issues involved in multithreading, and offers solutions to common problems. ![]() |
|
|
Thread Synchronization in JavaURL: http://www.sws.bfh.ch/~fischli/threads/ ODP description: Producer Consumer, Dining Philosophers, Reader Writer problems. Applet demonstration, design diagram. Source code accessible by e-mail request. Page title: Thread Synchronization ![]() |
|
|
Programming Java Threads in the Real World, Part 6URL: http://www.javaworld.com/javaworld/jw-03-1999/jw-03-toolbox_p.html ODP description: How to implement the Observer pattern (used by AWT/Swing for its event model) in a multithreaded environment. Page title: Programming Java threads in the real world, Part 6 - Java World ![]() |
|
|
Simple Java Thread Management Library (SJT.Mgmt)URL: http://simplethread.sourceforge.net/ ODP description: An easy to use library for adding thread management in Java applications. The library comes from early experience with JServ's lack of thread management, and recent posts to the java developer forums. [Open source] Page title: index ![]() |
|
|
Thread Synchronization in Java (Sources)URL: http://devcentral.iticentral.com/articles/Java/thread_sync/code.html ODP description: Introduces basic concurrency problems and shows how to solve them by using builtin Java synchronization primitives. (Only sources free accessed without registration) Page title: DevCentral - - Thread Synchronization in Java Code ![]() |
|
|
Implementing Read-Write Locks in JavaURL: http://www.asingh.net/technical/rwlocks.html ODP description: Read-write locks allow multiple threads to acquire a read lock provided no other thread currently has a write lock on the same object. A thread can acquire a write lock if no other thread owns either a read lock or a write lock. Page title: Read/Write Locks in Java by Amandeep Singh ![]() |
|
|
Extending Java to Support Shared Resource Protection and Deadlock Detection in Threads ProgrammingURL: http://www.acm.org/crossroads/xrds4-2/dynac.html ODP description: The current Java thread specification does not adequately provide for the protection of shared resources or for deadlock detection. A model is introduced and implemented that can provides shared resource protection and deadlock detection. (ACM Crossroads) Page description: Extension of Java threads for shared resource protection and deadlock detection; ACM Crossroads 4-2 ![]() |
|
|
A Proposal for Fixing the Java Programming Language's Threading ProblemsURL: http://www.ibm.com/developerworks/library/j-king.html ODP description: Java's threading model is entirely inadequate for programs of realistic complexity and isn't in the least bit object oriented. Page title: If I were king: A proposal for fixing the Java programming language's threading problems Page description: Allen Holub suggests that the Java programming language's threading model is possibly the weakest part of the language. It's entirely inadequate for programs of realistic complexity and isn't in the least bit object oriented. This article proposes significant changes and additions to the Java language that would address many of these problems. ![]() |
|
|
Programming Java Threads in the Real World, Part 5URL: http://www.javaworld.com/javaworld/jw-02-1999/jw-02-toolbox_p.html ODP description: Timers let you perform fixed-interval operations, such as animation refreshes. Page title: Programming Java threads in the real world, Part 5 - Java World ![]() |
|
|
Achieve Strong Performance With Threads, Part 2URL: http://www.javaworld.com/javaworld/jw-06-2002/jw-0607-java101.html ODP description: Explains synchronization, Java's synchronization mechanism, and two problems that arise when developers fail to use that mechanism correctly. Page title: Achieve strong performance with threads, Part 2 - Java World Page description: Is creating multithreaded Java programs hard? With the information gleaned from Part 1 of Java 101's thread series only, you might answer no. After all, last month I showed you how easy it is to create thread objects, start threads that associate with those objects by calling Thread's start() method, and perform simple thread operations by calling other Thread methods, such as the three overloaded join() methods. Yet many developers face di... ![]() |
|
|
Singletons with Needles and ThreadURL: http://www.javaworld.com/javaqa/2002-01/02-qa-0125-singleton4_p.html ODP description: Presents two approaches to creating thread-safe singletons. Page title: Singletons with needles and thread - Java World ![]() |
|
|
Programming Java Threads in the Real World, Part 1URL: http://www.javaworld.com/javaworld/jw-09-1998/jw-09-threads_p.html ODP description: Discusses the things you need to know to program threads in the real world. This article assumes you understand the language-level support for threads and focuses on the legion of problems that arise when you try to use these language features. Page title: Programming Java threads in the real world, Part 1 - Java World ![]() |
|
|
Threading Lightly: Reducing ContentionURL: http://www.ibm.com/developerworks/java/library/j-threads2.html ODP description: Explains why contended synchronization is a problem and then explores several techniques for reducing contention, and hence improving scalability. Page title: Threading lightly, Part 2: Reducing contention Page description: In Part 1 of this series, we examined the performance overhead of uncontended synchronization. With each successive JVM version, overall performance has improved, and the cost of uncontended synchronization has been reduced, making the issue of uncontended synchronization overhead less significant. Contended synchronization, however, is quite expensive. This article will explore several techniques for reducing contention, and hence improvin... ![]() |
|
|
Multithreading in JavaURL: http://www.devarticles.com/c/a/Java/Multithreading-in-Java/ ODP description: The article discusses how to pull off multithreading in Java. It is excerpted from chapter 10 of the book Java Demystified, written by Jim Keogh. Page description: Multithreading in Java ![]() |
|
|
Going AtomicURL: http://www-128.ibm.com/developerworks/java/library/j-jtp11234/ ODP description: Explains how the new atomic variable classes in JDK 5.0 enable the development of highly scalable nonblocking algorithms in the Java language. Page title: Java theory and practice: Going atomic Page description: Until JDK 5.0, it was not possible to write wait-free, lock-free algorithms in the Java language without using native code. The addition of the atomic variable classes in java.util.concurrent changes that situation. Follow along with concurrency expert Brian Goetz as he explains how these new classes have enabled the development of highly scalable nonblocking algorithms in the Java language. Share your thoughts on this article with the auth... ![]() |
|
|
Can ThreadLocal Solve the Double-checked Locking Problem?URL: http://www.javaworld.com/javaworld/jw-11-2001/jw-1116-dcl_p.html ODP description: Explains how to fix the double-checked locking idiom by using thread-local variables and takes a look at its performance. Page title: Can ThreadLocal solve the double-checked locking problem? - Java World ![]() |
|
|
Safe construction techniquesURL: http://www-128.ibm.com/developerworks/library/j-jtp0618.html ODP description: Concurrent programming in Java applications is more complicated than it looks: there are several subtle (and not so subtle) ways to create data races and other concurrency hazards in Java programs. In this article, Brian Goetz looks at a common threading hazard: allowing the this reference to escape during construction. Page title: Java theory and practice: Safe construction techniques Page description: Concurrent programming in Java applications is more complicated than it looks: there are several subtle (and not so subtle) ways to create data races and other concurrency hazards in Java programs. In this installment of Java theory and practice, Brian Goetz looks at a common threading hazard: allowing the this reference to escape during construction. This harmless-looking practice can cause unpredictable and undesirable results in your Jav... ![]() |
|
|
Double-Checked Locking: Clever, but BrokenURL: http://www.javaworld.com/javaworld/jw-02-2001/jw-0209-double_p.html ODP description: Though many Java books and articles recommend double-checked locking, unfortunately, it is not guaranteed to work in Java. Page title: Double-checked locking: Clever, but broken - Java World ![]() |
|
| |