[concurrency-interest] Extending and Interruption

Luís Eduardo V. Matta levmatta@uol.com.br
Fri, 21 Nov 2003 01:37:51 -0200


Requests (related to customizing locks):
  - Better explanation on volatile:
      There isn't much information on sun about this, people don't know it.
So they can't decide between volatile and Atomic classes (atomics are well
explained). Also explain where one does not need either, like with final
fields.

  - Better explanation on interruption and LookSupport (maybe in the
tutorial to come):
      It is not very clear how interruption, and park work. If you go to the
java tutorial or the API you will see that it still list suspend and resume
and does not actualy give a description or the sequence of activities in a
interruption and the return of it. Also explaning miss conceptions and
internal working, for example a programmer might try to release locks in the
interrupt and reaqquire them in interrupted procedures.
      For park you say that it removes the thread from the scheduling
system, this does not actualy say that it doens't use interrupt and
interrupted procedures, what makes the above ideia breakable.

  - Better explanation on  Interruptable methods (documentation and
implementation)
      It might make better developers, and software (it is very subtle).

  - A way to extend ReentrantLockQueueNode (and other internal structures of
locks, Semaphores):
      Still using my position on extending behavior not algoritms -
extendind the node (possibly through generics) could allow application
especific information for changing behavior while preserving the algoritm.

None of this requests are indispensable, I just whanted to make them.

Thanks,
Luís