PatchSet 4967 Date: 2004/07/14 12:43:49 Author: dalibor Branch: HEAD Tag: (none) Log: Implemented Thread.holdsLock
2004-07-13 Dalibor Topic <[EMAIL PROTECTED]> * libraries/javalib/java/lang/Thread.java (holdsLock): Implemented. Reported by: Jim Huang <[EMAIL PROTECTED]> Members: ChangeLog:1.2531->1.2532 libraries/javalib/java/lang/Thread.java:1.46->1.47 Index: kaffe/ChangeLog diff -u kaffe/ChangeLog:1.2531 kaffe/ChangeLog:1.2532 --- kaffe/ChangeLog:1.2531 Wed Jul 14 11:11:52 2004 +++ kaffe/ChangeLog Wed Jul 14 12:43:49 2004 @@ -1,5 +1,12 @@ 2004-07-13 Dalibor Topic <[EMAIL PROTECTED]> + * libraries/javalib/java/lang/Thread.java + (holdsLock): Implemented. + + Reported by: Jim Huang <[EMAIL PROTECTED]> + +2004-07-13 Dalibor Topic <[EMAIL PROTECTED]> + * config/sparc/jit-sparc.def: Fixed stray LOUT without closing brace. Index: kaffe/libraries/javalib/java/lang/Thread.java diff -u kaffe/libraries/javalib/java/lang/Thread.java:1.46 kaffe/libraries/javalib/java/lang/Thread.java:1.47 --- kaffe/libraries/javalib/java/lang/Thread.java:1.46 Sun Jul 11 13:33:25 2004 +++ kaffe/libraries/javalib/java/lang/Thread.java Wed Jul 14 12:43:51 2004 @@ -484,4 +484,19 @@ context = cl; } +public static boolean holdsLock(Object obj) { + // use obj.notify to check if the current thread holds + // the monitor of the object. + // if it doesn't, notify will throw an exception. + try { + obj.notify(); + // okay, current thread holds lock + return true; + } + catch (IllegalMonitorStateException e) { + // it doesn't hold the lock + return false; + } +} + } _______________________________________________ kaffe mailing list [EMAIL PROTECTED] http://kaffe.org/cgi-bin/mailman/listinfo/kaffe