InfoQ Homepage Concurrency Content on InfoQ
-
Designing Next-Generation Massively Multithreaded Architectures for Irregular Applications
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.
-
Exterminating Heisenbugs
Victor Grazi presents ten tips to keep in mind when architecting or developing concurrent applications in Java.
-
Interview and Book Review: Programming Concurrency on the JVM
In his latest book "Programming Concurrency on the JVM" author Venkat Subramaniam talks about the concurrency techniques using different JVM programming languages. He also discusses Software Transactional Memory (STM) and Actor-based Concurrency. InfoQ spoke with Venkat about his new book.
-
Joe Duffy on the Future of Concurrency and Parallelism
Joe Duffy, author of Concurrent Programming on Windows, talks about the future of concurrency and parallelism. This interview covers his thoughts on the language designs, libraries, and patterns that are becoming increasing important in modern programming.
-
No Callbacks Required: StratifiedJS Returns Sequential Programming to Javascript
StratifiedJS is a superset of Javascript that adds concurrency constructs and makes callback hell a thing of the past. How? InfoQ talked to Alexander Fritze, of Onilabs, to find out.
-
Profiling java.util.concurrent locks
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.
-
Memory Barriers and JVM Concurrency
Memory barriers, or fences, are a set of processor instructions used to apply ordering limitations on memory operations. This article explains the impact memory barriers have on the determinism of multi-threaded programs. We'll look at how memory barriers relate to JVM concurrency constructs such as volatile, synchronized and atomic conditionals.
-
Service Dynamics: the lazy man's way
This article describes "the hardest topic in OSGi, how to deal with service dynamics," based on personal experience. Two factors, concurrency and direct service references, make the problem "fiendishly hard." An import and an export policy should form a comprehensive doctrine for dealing with service dynamics and the article explores two export policies with their corresponding doctrines.
-
Concurrency and Immutability
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.
-
Using the Concurrency and Coordination Runtime
Nick Gunn provides a practical introduction the Concurrency and Coordination Runtime for .NET. CCR radically changes the way multi-threaded applications are written in .NET, shifting the focus from threads and locks to lightweight, asynchronous tasks.
-
Using Ruby Fibers for Async I/O: NeverBlock and Revactor
Rails 2.2 is schedule to be thread safe - but will blocking I/O libraries make it necessary to run multiple Ruby instances? We take a look at how non-blocking I/O and Ruby 1.9's Fibers help solve the problem. We talked to Mohammad A. Ali of the NeverBlock project and Tony Arcieri of the Revactor project.
-
Introducing Multithreaded Programming to JavaScript
While increasingly more websites are fully or partially based on AJAX, it is still difficult to develop complicated AJAX applications. What is the main issue which causes this difficulty in developing AJAX applications? Is it asynchronous communication with the server, or is it GUI programming? How can a multithreading JavaScript library help to ease some of these issues?