hotspot/src/share/vm/prims/jvm.cpp
changeset 22753 749328896281
parent 22189 60fa7416465e
child 22759 d2c32004414f
equal deleted inserted replaced
22752:5796083e0729 22753:749328896281
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   516   JVMWrapper("JVM_MonitorWait");
   516   JVMWrapper("JVM_MonitorWait");
   517   Handle obj(THREAD, JNIHandles::resolve_non_null(handle));
   517   Handle obj(THREAD, JNIHandles::resolve_non_null(handle));
   518   JavaThreadInObjectWaitState jtiows(thread, ms != 0);
   518   JavaThreadInObjectWaitState jtiows(thread, ms != 0);
   519   if (JvmtiExport::should_post_monitor_wait()) {
   519   if (JvmtiExport::should_post_monitor_wait()) {
   520     JvmtiExport::post_monitor_wait((JavaThread *)THREAD, (oop)obj(), ms);
   520     JvmtiExport::post_monitor_wait((JavaThread *)THREAD, (oop)obj(), ms);
       
   521 
       
   522     // The current thread already owns the monitor and it has not yet
       
   523     // been added to the wait queue so the current thread cannot be
       
   524     // made the successor. This means that the JVMTI_EVENT_MONITOR_WAIT
       
   525     // event handler cannot accidentally consume an unpark() meant for
       
   526     // the ParkEvent associated with this ObjectMonitor.
   521   }
   527   }
   522   ObjectSynchronizer::wait(obj, ms, CHECK);
   528   ObjectSynchronizer::wait(obj, ms, CHECK);
   523 JVM_END
   529 JVM_END
   524 
   530 
   525 
   531