Class cornell.slk.jkernel.core.JKernel
Source code
java.lang.Object
|
+----cornell.slk.jkernel.core.JKernel
- public final class JKernel
- extends java.lang.Object
The JKernel class represents an entire J-Kernel instance. To start
a J-Kernel:
- Create a JKernel object
- Set debugging options
- Create a resolver (which may make use of the SystemResolver) for
the root task
- Call createRootTask
- Create a runnable object to handle the root task's first thread.
It is helpful to use getRootTaskClass to get a Class object
defined by the root task, and to then use reflection to instantiate
an object of this class to produce a runnable.
- Call runRootTask
- Don't do anything else (just return). startRootTask will return if
the initial thread returns. The J-Kernel will run until there are
no non-daemon threads left.
All of this is automated in std.Main, which is the recommended interface
for starting the J-Kernel.
Methods inherited from class java.lang.Object
|
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait |
jKernel
static JKernel jKernel
systemClassLoader
SystemClassLoader systemClassLoader
systemResolver
SystemResolver systemResolver
dbug
public boolean dbug
eagerLinking
boolean eagerLinking
rootTask
Task rootTask
systemLoaderTask
Task systemLoaderTask
allTasks
java.util.Vector allTasks
globalThreadGroup
java.lang.ThreadGroup globalThreadGroup
repository
Repository repository
JKernel
public JKernel() throws java.lang.SecurityException
checkInit
static void checkInit(JKernel jk) throws java.lang.SecurityException
enableDebug
public void enableDebug()
enableEagerLinking
public void enableEagerLinking()
getSystemResolver
public Resolver getSystemResolver()
createRootTask
public void createRootTask(Resolver resolver) throws java.lang.Exception
getRootTaskClass
public java.lang.Class getRootTaskClass(java.lang.String className) throws java.lang.ClassNotFoundException
runRootTask
public void runRootTask(java.lang.Runnable target)