}
barrier.barrierWait();
}
endTime = System.currentTimeMillis();
System.out.println("Done after " + (endTime - startTime) +
"ms");
System.exit(0);
}
public void run() {
ProbedObject obj = new ProbedObject();
for (int i = 0; i < 100; i++) {
obj.objectCreateStart();
obj = new ProbedObject();
obj.objectCreateEnd();
}
barrier.barrierPost();
}
}
/* javaProbe.c */
/* cc -G -I/usr/java/include -I/usr/java/include/solaris javaProbe.c
-o
libjavaProbe.so */
#include <jni.h>
#include <tnf/probe.h>
#include "ProbedObject.h"
JNIEXPORT void JNICALL
Java_ProbedObject_objectCreateStart(JNIEnv *env, jobject obj) {
TNF_PROBE_0(object_create_start, "object creation", "");
}
JNIEXPORT void JNICALL
Java_ProbedObject_objectCreateEnd(JNIEnv *env, jobject obj) {
TNF_PROBE_0(object_create_end, "object creation", "");
}
#
run.csh
# Show how to compile, link, and run a program to get TNF information
echo "Compiling java code..."
javac -O TNFExample.java
javah -jni ProbedObject
echo "Compiling C code..."
cc -G -I/usr/java/include -I/usr/java/include/solaris javaProbe.c -o
libjavaProbe.so
Search WWH :
Custom Search
Previous Page
Multithreaded Programming with JAVA - Topic Index
Next Page
Multithreaded Programming with JAVA - Bookmarks
Home