I received an announcement in my email for Message-Driven Java Threads API this morning. Apparently, Java threads can send and receive message between themselves with this API.
Perusing the few paragraphs of the announcement I came across the term "deadlock-safe" which I didn't understand. I know what "deadlock-free" would imply. Since I'm unfamiliar with Java Threads and may not be up-to-date on the most current lingo in that area, I went to the proffered website and still didn't find anything.
Can anyone give me a definition/description of "deadlock-safe"? How is this important to Java Threads, especially for those that can pass messages? Examples would help this old, tired brain grasp any new-fangled concepts.
> Perusing the few paragraphs of the announcement I > came across the term "deadlock-safe" which I didn't > understand.
Lock-free is deadlock-free. Java is using some lock-free algos. RCU... They have classes for atomic primitives that can implement many lock-free algos.
If a piece of code is holding a complex set of locks, and calls an API which uses its own locking schema... Sometimes you can deadlock yourself. I think there is a link on MSDN somewhere about this issue.
Yes, that is the product I was sent information about.
I don't use Java, either, so I'm not sure about some of the Java specific questions I posed. (I think we had one admitted Java Threads user in the Forum at one time. I was hoping they could have given some insights.)