Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.hotspot.agent.jmod - Hotspot Agent Module
JDK 11 jdk.hotspot.agent.jmod is the JMOD file for JDK 11 Hotspot Agent module.
JDK 11 Hotspot Agent module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.hotspot.agent.jmod.
JDK 11 Hotspot Agent module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Hotspot Agent module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.hotspot.agent.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/jvm/hotspot/utilities/soql/JSJavaThread.java
/* * Copyright (c) 2004, 2009, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * */ package sun.jvm.hotspot.utilities.soql; import java.util.*; import sun.jvm.hotspot.debugger.*; import sun.jvm.hotspot.oops.*; import sun.jvm.hotspot.runtime.*; /** * Wraps a JavaThread instance in the target VM. */ public class JSJavaThread extends JSJavaInstance { public JSJavaThread(Instance threadOop, JSJavaFactory fac) { super(threadOop, fac); // JavaThread retrieved from java.lang.Thread instance may be null. // This is the case for threads not-started and for zombies. Wherever // appropriate, check for null instead of resulting in NullPointerException. this.jthread = OopUtilities.threadOopGetJavaThread(threadOop); } public JSJavaThread(JavaThread jt, JSJavaFactory fac) { super((Instance) jt.getThreadObj(), fac); this.jthread = jt; } public String toString() { String name = getName(); StringBuffer buf = new StringBuffer(); buf.append("Thread (address="); buf.append(getOop().getHandle()); buf.append(", name="); if (name != null) { buf.append(name); } else { buf.append("<unnamed>"); } buf.append(')'); return buf.toString(); } protected Object getFieldValue(String name) { if (name.equals("name")) { return getName(); } else if (name.equals("frames")) { return getFrames(); } else if (name.equals("monitors")) { return getOwnedMonitors(); } else { return super.getFieldValue(name); } } protected String[] getFieldNames() { String[] flds = super.getFieldNames(); String[] res = new String[flds.length + 2]; System.arraycopy(flds, 0, res, 0, flds.length); res[flds.length] = "frames"; res[flds.length + 1] = "monitors"; return res; } protected boolean hasField(String name) { if (name.equals("frames") || name.equals("monitors")) { return true; } else { return super.hasField(name); } } //-- Internals only below this point private String getName() { return OopUtilities.threadOopGetName(getOop()); } private synchronized JSList getFrames() { if (framesCache == null) { final List list = new ArrayList(0); if (jthread != null) { JavaVFrame jvf = jthread.getLastJavaVFrameDbg(); while (jvf != null) { list.add(jvf); jvf = jvf.javaSender(); } } framesCache = factory.newJSList(list); } return framesCache; } private synchronized JSList getOwnedMonitors() { if (monitorsCache == null) { final List ownedMonitors = new ArrayList(0); if (jthread != null) { List lockedObjects = new ArrayList(); // List<OopHandle> ObjectMonitor waitingMonitor = jthread.getCurrentWaitingMonitor(); OopHandle waitingObj = null; if (waitingMonitor != null) { // save object of current wait() call (if any) for later comparison waitingObj = waitingMonitor.object(); } ObjectMonitor pendingMonitor = jthread.getCurrentPendingMonitor(); OopHandle pendingObj = null; if (pendingMonitor != null) { // save object of current enter() call (if any) for later comparison pendingObj = pendingMonitor.object(); } JavaVFrame frame = jthread.getLastJavaVFrameDbg(); while (frame != null) { List frameMonitors = frame.getMonitors(); // List<MonitorInfo> for (Iterator miItr = frameMonitors.iterator(); miItr.hasNext(); ) { MonitorInfo mi = (MonitorInfo) miItr.next(); if (mi.eliminated() && frame.isCompiledFrame()) { continue; // skip eliminated monitor } OopHandle obj = mi.owner(); if (obj == null) { // this monitor doesn't have an owning object so skip it continue; } if (obj.equals(waitingObj)) { // the thread is waiting on this monitor so it isn't really owned continue; } if (obj.equals(pendingObj)) { // the thread is pending on this monitor so it isn't really owned continue; } boolean found = false; for (Iterator loItr = lockedObjects.iterator(); loItr.hasNext(); ) { // check for recursive locks if (obj.equals(loItr.next())) { found = true; break; } } if (found) { // already have this object so don't include it continue; } // add the owning object to our list lockedObjects.add(obj); } frame = (JavaVFrame) frame.javaSender(); } // now convert List<OopHandle> to List<Oop> ObjectHeap heap = VM.getVM().getObjectHeap(); for (Iterator loItr = lockedObjects.iterator(); loItr.hasNext(); ) { ownedMonitors.add(heap.newOop((OopHandle)loItr.next())); } } monitorsCache = factory.newJSList(ownedMonitors); } return monitorsCache; } private JavaThread jthread; private JSList framesCache; private JSList monitorsCache; }
⏎ sun/jvm/hotspot/utilities/soql/JSJavaThread.java
Or download all of them as a single archive file:
File name: jdk.hotspot.agent-11.0.1-src.zip File size: 1243786 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.httpserver.jmod - HTTP Server Module
2020-02-29, 132074👍, 0💬
Popular Posts:
How to download and install JDK (Java Development Kit) 7? If you want to write Java applications, yo...
Smack is an Open Source XMPP (Jabber) client library for instant messaging and presence. A pure Java...
Apache BCEL Source Code Files are inside the Apache BCEL source package file like bcel-6.6.1-src.zip...
maven-model-builder-3.8. 6.jaris the JAR file for Apache Maven 3.8.6 Model Builder module. Apache Ma...
How to run "jar" command from JDK tools.jar file? "jar" is the JAR (Java Archive) file management co...