Artigo Acesso aberto

The Java memory model is fatally flawed

2000; Wiley; Volume: 12; Issue: 6 Linguagem: Inglês

10.1002/1096-9128(200005)12

ISSN

1096-9128

Autores

William Pugh,

Tópico(s)

Logic, programming, and type systems

Resumo

The Java memory model described in Chapter 17 of the Java Language Specification gives constraints on how threads interact through memory. This chapter is hard to interpret and poorly understood; it imposes constraints that prohibit common compiler optimizations and are expensive to implement on existing hardware. Most JVMs violate the constraints of the existing Java memory model; conforming to the existing specification would impose significant performance penalties. In addition, programming idioms used by some programmers and used within Sun's Java Development Kit is not guaranteed to be valid according to the existing Java memory model.Furthermore, implementing Java on a shared-memory multiprocessor that implements a weakmemory model poses some implementation challenges not previously considered. Copyright © 2000 John Wiley & Sons, Ltd.

Referência(s)