<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: What is &amp;quot;deadlock-safe&amp;quot;? in Intel® Moderncode for Parallel Architectures</title>
    <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986538#M5846</link>
    <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;&amp;gt; Perusing the few paragraphs of the announcement I&lt;BR /&gt;&amp;gt; came across the term "deadlock-safe" which I didn't&lt;BR /&gt;&amp;gt; understand. &lt;BR /&gt;&lt;BR /&gt;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.&lt;BR /&gt;&lt;BR /&gt;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.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;This is an example of a &lt;A href="http://softwareforums.intel.com/ids/board/message?board.id=42&amp;amp;message.id=67" target="_blank"&gt;lock &amp;amp; deadlock-free algo&lt;/A&gt;&lt;BR /&gt;
&lt;P&gt;&lt;SPAN class="time_text"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Message Edited by intel.software.network.support on &lt;SPAN class="date_text"&gt;12-09-2005&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;01:41 PM&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 14 Aug 2003 05:05:53 GMT</pubDate>
    <dc:creator>Intel_C_Intel</dc:creator>
    <dc:date>2003-08-14T05:05:53Z</dc:date>
    <item>
      <title>What is "deadlock-safe"?</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986537#M5845</link>
      <description>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.  &lt;BR /&gt;&lt;BR /&gt;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.  &lt;BR /&gt;&lt;BR /&gt;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.&lt;BR /&gt;&lt;BR /&gt;Thanks.&lt;BR /&gt;&lt;BR /&gt;-- clay</description>
      <pubDate>Wed, 13 Aug 2003 21:10:24 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986537#M5845</guid>
      <dc:creator>ClayB</dc:creator>
      <dc:date>2003-08-13T21:10:24Z</dc:date>
    </item>
    <item>
      <title>Re: What is "deadlock-safe"?</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986538#M5846</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;&amp;gt; Perusing the few paragraphs of the announcement I&lt;BR /&gt;&amp;gt; came across the term "deadlock-safe" which I didn't&lt;BR /&gt;&amp;gt; understand. &lt;BR /&gt;&lt;BR /&gt;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.&lt;BR /&gt;&lt;BR /&gt;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.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;This is an example of a &lt;A href="http://softwareforums.intel.com/ids/board/message?board.id=42&amp;amp;message.id=67" target="_blank"&gt;lock &amp;amp; deadlock-free algo&lt;/A&gt;&lt;BR /&gt;
&lt;P&gt;&lt;SPAN class="time_text"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Message Edited by intel.software.network.support on &lt;SPAN class="date_text"&gt;12-09-2005&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;01:41 PM&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Aug 2003 05:05:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986538#M5846</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2003-08-14T05:05:53Z</dc:date>
    </item>
    <item>
      <title>Re: What is "deadlock-safe"?</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986539#M5847</link>
      <description>&amp;gt; I'll buy the lock-free is deadlock-free.  I assume&lt;BR /&gt;&amp;gt; that you can get rid of one or more of the conditions&lt;BR /&gt;&amp;gt; for deadlock by doing this?  &lt;BR /&gt;&lt;BR /&gt;Yep.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;gt; If the Java primitives do use&lt;BR /&gt;&amp;gt; lock-free methods to achieve a deadlock-free&lt;BR /&gt;&amp;gt; implementation&lt;BR /&gt;&lt;BR /&gt;Java uses lock-free algos in it new dictionary:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://java.sun.com/j2se/1.4.2/1.4.2_whitepaper.html#8"&gt;Java Runtime Improvements&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;And its event multi-caster. Maybe RCU?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;gt; For example, two&lt;BR /&gt;&amp;gt; threads both execute a blocking receive expecting the&lt;BR /&gt;&amp;gt; other thread to do the send operation first.  &lt;BR /&gt;&lt;BR /&gt;INFINITE blocking will deadlock for sure, if your not safe.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;gt; Does the Java thread message passing API&lt;BR /&gt;&amp;gt; implementation not have blocking operations? &lt;BR /&gt;&lt;BR /&gt;Not sure. I don't use Java.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;gt; Perhaps&lt;BR /&gt;&amp;gt; each operation is timed and this could break the&lt;BR /&gt;&amp;gt; deadlock cycle.&lt;BR /&gt;&lt;BR /&gt;That would do it.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;P.S.&lt;BR /&gt;&lt;BR /&gt;Is this similar to the message you got?&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://developer.sys-con.com/viewitem.cfm?thread=7781"&gt;Deadlock Safe Java API?&lt;/A&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 20 Aug 2003 10:59:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986539#M5847</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2003-08-20T10:59:49Z</dc:date>
    </item>
    <item>
      <title>Re: What is "deadlock-safe"?</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986540#M5848</link>
      <description>&amp;gt; P.S.&lt;BR /&gt;&amp;gt; &lt;BR /&gt;&amp;gt; Is this similar to the message you got?&lt;BR /&gt;&amp;gt; &lt;BR /&gt;&amp;gt; &lt;A href="http://developer.sys-con.com/viewitem.cfm?thread=&amp;lt;br&amp;gt;&amp;gt; 781" target="_blank" title="http://developer.sys-con.com/viewitem.cfm?thread=&amp;lt;br&amp;gt;&amp;gt; 781"&gt;Deadlock Safe Java API?&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Yes, that is the product I was sent information about.&lt;BR /&gt;&lt;BR /&gt;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.)&lt;BR /&gt;&lt;BR /&gt;--clay</description>
      <pubDate>Mon, 15 Sep 2003 22:40:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/What-is-quot-deadlock-safe-quot/m-p/986540#M5848</guid>
      <dc:creator>ClayB</dc:creator>
      <dc:date>2003-09-15T22:40:06Z</dc:date>
    </item>
  </channel>
</rss>

