{"id":2710,"date":"2017-11-27T07:49:14","date_gmt":"2017-11-27T07:49:14","guid":{"rendered":"http:\/\/webartdevelopers.com\/?p=2710"},"modified":"2017-11-27T07:49:14","modified_gmt":"2017-11-27T07:49:14","slug":"how-does-deadlock-occur-in-multiple-threads-in-core-java","status":"publish","type":"post","link":"https:\/\/webartdevelopers.com\/blog\/how-does-deadlock-occur-in-multiple-threads-in-core-java\/","title":{"rendered":"How does Deadlock Occur in Multiple Threads in Core Java"},"content":{"rendered":"<p>In this tutorial how does deadlock occur in Multiple Threads in Core Java is shown.<\/p>\n<p>Code:<\/p>\n<p>Thread6.java<\/p>\n<p>class A extends Thread<br \/>\n{<br \/>\nsynchronized void a1()<br \/>\n{<br \/>\nSystem.out.println(&#8220;a1 is called&#8221;);<br \/>\nB b = new B();<br \/>\nb.b1();<br \/>\n}<br \/>\npublic void run()<br \/>\n{<br \/>\na1();<br \/>\n}<br \/>\n}<\/p>\n<p>class B extends Thread<br \/>\n{<br \/>\nsynchronized void b1()<br \/>\n{<br \/>\nSystem.out.println(&#8220;b1 is called&#8221;);<br \/>\nA a = new A();<br \/>\na.a1();<br \/>\n}<br \/>\npublic void run()<br \/>\n{<br \/>\nb1();<br \/>\n}<br \/>\n}<\/p>\n<p>class ThreadDemo<br \/>\n{<br \/>\npublic static void main(String args[])<br \/>\n{<br \/>\nA t1 = new A();<br \/>\nB t2 = new B();<br \/>\nt1.start();<br \/>\nt2.start();<br \/>\n}<br \/>\n}<\/p>\n<p><a href=\"https:\/\/youtu.be\/AEEp3gM6l3U\">https:\/\/youtu.be\/AEEp3gM6l3U<\/a><\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"In this tutorial how does deadlock occur in Multiple Threads in Core Java is shown. Code: Thread6.java class A extends Thread { synchronized void a1() { System.out.println(&#8220;a1 is called&#8221;); B b = new B(); b.b1(); } public void run() { a1(); } } class B extends Thread { synchronized void b1() { System.out.println(&#8220;b1 is called&#8221;); A a = new A(); a.a1(); } public void run() { b1(); } } class ThreadDemo { public static void main(String args) { A t1 = new A(); B t2 = new B(); t1.start(); t2.start(); } }<!-- AddThis Advanced Settings generic via filter on get_the_excerpt -->","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[156],"tags":[157,194,190,187],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/posts\/2710"}],"collection":[{"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/comments?post=2710"}],"version-history":[{"count":1,"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/posts\/2710\/revisions"}],"predecessor-version":[{"id":2711,"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/posts\/2710\/revisions\/2711"}],"wp:attachment":[{"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/media?parent=2710"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/categories?post=2710"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webartdevelopers.com\/blog\/wp-json\/wp\/v2\/tags?post=2710"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}