BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Concurrency Content on InfoQ

  • Inter-thread communications in Java at the speed of light

    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.

  • Joe Duffy on Uniqueness and Reference Immutability for Safe Parallelism

    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.

  • 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.

BT