bash get_specified_source.sh jdk8u77
Note: This script does not validate the input.
set logging on | |
set logging file /path/to/file | |
f 7 | |
p/x counter | |
p/x counter->objData | |
p/x (TObjectData *)counter->objData | |
p/x counter->objData->klassOop |
jdeps -M -s lib/*
jdeps -genmoduleinfo msrc lib/*
jdeps -R -cp lib/* lib/(what_you_want).jar
jdeps -s -R -cp lib/* lib/(what_you_want).jar
jdeps -s -ct -R -cp lib/* lib/(what_you_want).jar
jlink --help
jlink --modulepath $JMODS --addmods java.base --output yimage --exclude-files *.diz
diff -r d284ec1e1226 Makefile.am | |
--- a/Makefile.am Wed Oct 14 10:43:58 2015 +0900 | |
+++ b/Makefile.am Tue Oct 20 16:54:18 2015 +0900 | |
@@ -26,14 +26,14 @@ | |
install-exec-local: | |
$(mkdir_p) $(DESTDIR)/$(libexecdir) | |
$(mkdir_p) $(DESTDIR)/$(libexecdir)/lib | |
- $(INSTALL_DATA) $(ANALYZER_DIR)/THIRD_PARTY_README $(DESTDIR)/$(libexecdir) | |
- $(INSTALL_DATA) $(ANALYZER_DIR)/heapstats-analyzer.jar $(DESTDIR)/$(libexecdir) | |
- $(INSTALL_DATA) $(ANALYZER_DIR)/filterDefine.xsd $(DESTDIR)/$(libexecdir) |
sudo dnf install -y --enablerepo="*debug*" hg net-snmp net-snmp-devel gcc gcc-c++ binutils binutils-devel maven ant java-1.8.0-openjdk java-1.8.0-openjdk-devel java-1.8.0-openjdk-debuginfo | |
hg clone http://icedtea.classpath.org/hg/heapstats | |
cd heapstats/ | |
./configure; make agent | |
sed -e "s/thread_record_enable=false/thread_record_enable=true/" agent/heapstats.conf > agent/heapstats_threadrecorder.conf | |
cd agent/test/deadlock | |
javac DLSample.java | |
java -agentpath:../../src/libheapstats.so=../../heapstats_threadrecorder.conf DLSample 5 |
object HelloWorld { | |
def main(args: Array[String]) { | |
println("Hello, world!") | |
} | |
} |
import javafx.scene.Node; | |
import javafx.scene.Parent; | |
// : | |
private void dump(Node n, int depth) { | |
for (int i = 0; i < depth; i++) System.out.print(" "); | |
System.out.println(n); | |
if (n instanceof Parent) for (Node c: ((Parent) n).getChildrenUnmodifiable()) dump(c, depth + 1); | |
} | |
// : |
# streams: some indexable collection | |
IntStream.range(0, streams.size()) | |
.forEach(index -> | |
some.process( | |
index, | |
streams.get(index) | |
) | |
); |
本セッションは前半は HeapStats についての通常セッション、後半はハンズオン形式で HeapStats を実際に使用して簡単なトラブルシューティングを行う形式になっています。後半のハンズオンセッションは大きく以下の内容を実施します。
このため、後半のハンズオンに参加される方は、十分に充電したノート PC をご持参頂く必要があります。
>IBMの@ashigeru | |
IBM さんや @ashigeru さんの資料でした。2資料です。ちなみにそれぞれ | |
http://www.ibm.com/developerworks/jp/websphere/library/java/j2ee_classloader/index.html | |
http://www.slideshare.net/ashigeru/classloader | |
です。 | |
>YoungとOldは、参照があるかどうかの違い。不要になったタイミングでGCで回収される。 | |
すみません、伝え方が悪かったようです。「参照がなくなったときに不要になる。不要になったタイミングでGCに回収される」です。主なYoungとOldの違いはオブジェクトの年齢で、参照云々は別の話でした。(参照され続けてオブジェクトが長生きしてたらYoungからOldへ移動する) |