Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: clarified the opening paragraph and normative language.

Programs must not lock on an object of a class that implements Instances of classes that implement either or both of the Lock and Condition interfaces of the java.util.concurrent.locks package are known as high-level concurrency objects. Using the intrinsic locks of these classes such objects is a questionable practice even in cases where the code may appear to function correctly. Consequently, programs that interact with such objects must use only high-level locking facilities provided by the interfaces; use of the intrinsic locks is forbidden. This problem generally arises when code is refactored from intrinsic locking to the java.util.concurrent dynamic-locking utilities.

...

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="67b8b2be0389a29a-78c350d6-468d465e-9d1b9ca2-2437de725fcfbf20f2b13928"><ac:plain-text-body><![CDATA[

[[API 2006

AA. Bibliography#API 06]]

 

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="f4293118289c2245-a8122601-48ed4596-a216b3dc-043e0c8f978d1b4805c45382"><ac:plain-text-body><![CDATA[

[[Findbugs 2008

AA. Bibliography#Findbugs 08]]

 

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="17cc72bc81d5f284-68cfd4be-4ddd4cae-87c28141-dcbeebd83960b3d9b53ad8f7"><ac:plain-text-body><![CDATA[

[[Pugh 2008

AA. Bibliography#Pugh 08]]

"Synchronization"

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="37183caa6539f424-6835fd3b-4a6f4e22-8354b996-a2f8bb96ef7141840d16bc0d"><ac:plain-text-body><![CDATA[

[[Miller 2009

AA. Bibliography#Miller 09]]

Locking

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="6c6e1e7c6c539979-8ba1c399-4cec476d-b725b03b-fd7449619a9a8e4bde3f6334"><ac:plain-text-body><![CDATA[

[[Tutorials 2008

AA. Bibliography#Tutorials 08]]

[Wrapper Implementations

http://java.sun.com/docs/books/tutorial/collections/implementations/wrapper.html]

]]></ac:plain-text-body></ac:structured-macro>

...