Dynamic detection of atomic-set-serializability violations
Proceedings of the 30th international conference on Software engineering
Model analysis for business event processing
IBM Systems Journal
Types for atomicity: Static checking and inference for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Teaching students to develop thread-safe java classes
Proceedings of the 13th annual conference on Innovation and technology in computer science education
AtomRace: data race and atomicity violation detector and healer
PADTAD '08 Proceedings of the 6th workshop on Parallel and distributed systems: testing, analysis, and debugging
Constraint based optimization of stationary fields
Proceedings of the 6th international symposium on Principles and practice of programming in Java
Monitoring the QoS for Web Services
ICSOC '07 Proceedings of the 5th international conference on Service-Oriented Computing
Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Teaching about threading: where and what?
ACM SIGACT News
Aspectising Concurrency for the RTSJ
ICDCN '09 Proceedings of the 10th International Conference on Distributed Computing and Networking
Refactoring sequential Java code for concurrency via concurrent libraries
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
A short unit to introduce multi-threaded programming
Journal of Computing Sciences in Colleges
Parallel and Distributed Invariant Checking of Microcontroller Software
Electronic Notes in Theoretical Computer Science (ENTCS)
The habanero multicore software research project
Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
An Assume Guarantee Verification Methodology for Aspect-Oriented Programming
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
@J: towards rapid development of dynamic analysis tools for the Java Virtual Machine
Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages
Parallel dynamic analysis on multicores with aspect-oriented programming
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Verifying safety properties of concurrent heap-manipulating programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Formalising java's data race free guarantee
TPHOLs'07 Proceedings of the 20th international conference on Theorem proving in higher order logics
JRF-E: using model checking to give advice on eliminating memory model-related bugs
Proceedings of the IEEE/ACM international conference on Automated software engineering
Unit testing for concurrent business code
Proceedings of the 8th Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging
Panel: designing the next educational programming language
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Science of Computer Programming
Scientific Programming - Exploring Languages for Expressing Medium to Massive On-Chip Parallelism
The nullness analyser of JULIA
LPAR'10 Proceedings of the 16th international conference on Logic for programming, artificial intelligence, and reasoning
Towards scalable service composition on multicores
OTM'10 Proceedings of the 2010 international conference on On the move to meaningful internet systems
Teaching concurrency-oriented programming with Erlang
Proceedings of the 42nd ACM technical symposium on Computer science education
CnC-CUDA: declarative programming for GPUs
LCPC'10 Proceedings of the 23rd international conference on Languages and compilers for parallel computing
Strategies for preparing computer science students for the multicore world
Proceedings of the 2010 ITiCSE working group reports
How do programs become more concurrent: a story of program transformations
Proceedings of the 4th International Workshop on Multicore Software Engineering
Transformation for class immutability
Proceedings of the 33rd International Conference on Software Engineering
Refactoring Java programs for flexible locking
Proceedings of the 33rd International Conference on Software Engineering
Refactoring Java programs using concurrent libraries
Proceedings of the Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging
Proceedings of the 15th International Software Product Line Conference, Volume 2
Unifying barrier and point-to-point synchronization in OpenMP with phasers
IWOMP'11 Proceedings of the 7th international conference on OpenMP in the Petascale era
Symmetry-aware predicate abstraction for shared-variable concurrent programs
CAV'11 Proceedings of the 23rd international conference on Computer aided verification
Resource sharing in RTSJ and SCJ systems
Proceedings of the 9th International Workshop on Java Technologies for Real-Time and Embedded Systems
Testing atomicity of composed concurrent operations
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Performance of a multi-agent system over a multi-core cluster managed by Terracotta
Proceedings of the 2011 Symposium on Theory of Modeling & Simulation: DEVS Integrative M&S Symposium
Habanero-Java: the new adventures of old X10
Proceedings of the 9th International Conference on Principles and Practice of Programming in Java
Overseer: low-level hardware monitoring and management for Java
Proceedings of the 9th International Conference on Principles and Practice of Programming in Java
Types for relaxed memory models
TLDI '12 Proceedings of the 8th ACM SIGPLAN workshop on Types in language design and implementation
An asynchronous Java interface to MATLAB
Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques
Introducing parallelism and concurrency in the data structures course
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Democratizing transactional programming
Middleware'11 Proceedings of the 12th ACM/IFIP/USENIX international conference on Middleware
Fully automatic and precise detection of thread safety violations
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
new Scala() instance of Java: a comparison of the memory behaviour of Java and Scala programs
Proceedings of the 2012 international symposium on Memory Management
Design, verification and applications of a new read-write lock algorithm
Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
Counterexample-guided abstraction refinement for symmetric concurrent programs
Formal Methods in System Design
Marathon: detecting atomic-set serializability violations with conflict graphs
RV'11 Proceedings of the Second international conference on Runtime verification
ooErlang: another object oriented extension to Erlang
Proceedings of the eleventh ACM SIGPLAN workshop on Erlang workshop
Lock inference in the presence of large libraries
ECOOP'12 Proceedings of the 26th European conference on Object-Oriented Programming
How do developers use parallel libraries?
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Efficient coverability analysis by proof minimization
CONCUR'12 Proceedings of the 23rd international conference on Concurrency Theory
Democratizing transactional programming
Proceedings of the 12th International Middleware Conference
Plan B: a buffered memory model for Java
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Dynamic aspect-oriented programming in java: the hotwave experience
Transactions on Aspect-Oriented Software Development IX
Concurrent differential evolution based on generational model for multi-core CPUs
SEAL'12 Proceedings of the 9th international conference on Simulated Evolution and Learning
A Transformation Framework for Optimizing Task-Parallel Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Accelerating Habanero-Java programs with OpenCL generation
Proceedings of the 2013 International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools
PMG: Multi-core Metabolite Identification
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
"I was fortunate indeed to have worked with a fantastic team on the design and implementation of the concurrency features added to the Java platform in Java 5.0 and Java 6. Now this same team provides the best explanation yet of these new features, and of concurrency in general. Concurrency is no longer a subject for advanced users only. Every Java developer should read this book." --Martin Buchholz JDK Concurrency Czar, Sun Microsystems"For the past 30 years, computer performance has been driven by Moore's Law; from now on, it will be driven by Amdahl's Law. Writing code that effectively exploits multiple processors can be very challenging. Java Concurrency in Practice provides you with the concepts and techniques needed to write safe and scalable Java programs for today's--and tomorrow's--systems." --Doron Rajwan Research Scientist, Intel Corp"This is the book you need if you're writing--or designing, or debugging, or maintaining, or contemplating--multithreaded Java programs. If you've ever had to synchronize a method and you weren't sure why, you owe it to yourself and your users to read this book, cover to cover." --Ted Neward Author of Effective Enterprise Java"Brian addresses the fundamental issues and complexities of concurrency with uncommon clarity. This book is a must-read for anyone who uses threads and cares about performance." --Kirk Pepperdine CTO, JavaPerformanceTuning.com"This book covers a very deep and subtle topic in a very clear and concise way, making it the perfect Java Concurrency reference manual. Each page is filled with the problems (and solutions!) that programmers struggle with every day. Effectively exploiting concurrency is becoming more and more important now that Moore's Law is delivering more cores but not faster cores, and this book will show you how to do it." --Dr. Cliff Click Senior Software Engineer, Azul Systems"I have a strong interest in concurrency, and have probably written more thread deadlocks and made more synchronization mistakes than most programmers. Brian's book is the most readable on the topic of threading and concurrency in Java, and deals with this difficult subject with a wonderful hands-on approach. This is a book I am recommending to all my readers of The Java Specialists' Newsletter, because it is interesting, useful, and relevant to the problems facing Java developers today." --Dr. Heinz Kabutz The Java Specialists' Newsletter"I've focused a career on simplifying simple problems, but this book ambitiously and effectively works to simplify a complex but critical subject: concurrency. Java Concurrency in Practice is revolutionary in its approach, smooth and easy in style, and timely in its delivery--it's destined to be a very important book." --Bruce Tate Author of Beyond Java"Java Concurrency in Practice is an invaluable compilation of threading know-how for Java developers. I found reading this book intellectually exciting, in part because it is an excellent introduction to Java's concurrency API, but mostly because it captures in a thorough and accessible way expert knowledge on threading not easily found elsewhere." --Bill Venners Author of Inside the Java Virtual MachineThreads are a fundamental part of the Java platform. As multicore processors become the norm, using concurrency effectively becomes essential for building high-performance applications. Java SE 5 and 6 are a huge step forward for the development of concurrent applications, with improvements to the Java Virtual Machine to support high-performance, highly scalable concurrent classes and a rich set of new concurrency building blocks. In Java Concurrency in Practice, the creators of these new facilities explain not only how they work and how to use them, but also the motivation and design patterns behind them.However, developing, testing, and debugging multithreaded programs can still be very difficult; it is all too easy to create concurrent programs that appear to work, but fail when it matters most: in production, under heavy load. Java Concurrency in Practice arms readers with both the theoretical underpinnings and concrete techniques for building reliable, scalable, maintainable concurrent applications. Rather than simply offering an inventory of concurrency APIs and mechanisms, it provides design rules, patterns, and mental models that make it easier to build concurrent programs that are both correct and performant.This book covers: Basic concepts of concurrency and thread safety Techniques for building and composing thread-safe classes Using the concurrency building blocks in java.util.concurrent Performance optimization dos and don'ts Testing concurrent programs Advanced topics such as atomic variables, nonblocking algorithms, and the Java Memory Model