Developing a light-weight, lockless, inter-thread communication framework in Java without using any locks, synchronizers, semaphores, waits, notifies; and no queues, messages, events or any other concurrency specific words or tools. Just get POJOs communicating behind plain old Java interfaces.
We interviewed Joe Duffy, author of Concurrent Programming on Windows, about his research into the use of type systems to ensure safe parallelism. This work was presented in the paper titled Uniqueness and Reference Immutability for Safe Parallelism. We asked for this interview because there seemed to be a lot of misconceptions about this research project.
In this article, authors discuss Cray XMT, a massively multithreaded architecture framework that addresses the needs of irregular data-intensive applications in emerging fields like bioinformatics, semantic databases, natural language processing, and social network analysis. They also compare this approach with other multithreaded architectures such as GPUs and UltraSPARC processors.
Victor Grazi presents ten tips to keep in mind when architecting or developing concurrent applications in Java. 9
InfoQ spoke with book author Venkat Subramaniam about strategies and design approaches for programming concurrency on JVM and hardware capabilities to achieve concurrency. 4
Joe Duffy talks about the future of concurrency and parallelism. This interview covers his thoughts on the language designs, libraries, and patterns that are becoming important in modern programming. 1
IBM’s Yao Qi, Raja Das, and Zhi Da Luo describe jucprofiler, an alphaWorks tool designed to profile multicore applications that make use of the java.util.concurrent classes introduced in Java 5. 2
This article explains the impact memory barriers, or fences, have on the determinism of multi-threaded programs. 2
This article presents one developer's approach to dealing with the "fiendishly hard" OSGi issue of service dynamics. The basic problem is described and two different solutions are proposed. 2
This article explores the issue of immutability as a function of concurrency demands in modern software applications. The discussion occurs in the general context of dependency injection. 16
Nick Gunn provides a practical introduction CCR for .NET. CCR radically changes the way multi-threaded applications are written in .NET, shifting the focus from threads to asynchronous tasks. 5