Я пытаюсь понять исходный код hadoop, отлаживая его с помощью eclipse. пока я его отладку, я встретил родную функцию с именем start0() здесь:
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/lang/Thread.java#Thread.start0%28%29Как я могу отлаживать встроенную функцию в исходном коде хауопа?
я могу отладить его с помощью затмения «или с помощью какого-либо внешнего инструмента» или, по крайней мере, я могу прочитать исходный код для этой функции?
Hadoop - это открытый исходный код, поэтому он предположил, что я могу получить доступ и прочитать код для всех функций в нем, но я не знаю, как это сделать.
Note: my hadoop version : 1.2.1
Edit: Я читал о родной функции и от того, что я прочитал, класс, который содержит нативную функцию должен содержать что-то вроде этого:
`// load DLL that contains static method
static {
System.loadLibrary("NativeDemo");
}`
но класс резьбы в Hadoop содержит следующее:
/* Make sure registerNatives is the first thing <clinit> does. */ 134 private static native void More ...registerNatives(); 135 static { 136 registerNatives(); 137 }
Так как я могу узнать имя библиотеки, которая начинается0() связана с?
где находится исходный код для функции start0() в файле конфигурации? – Flowra
Данная ссылка в основном относится к исходному коду Hadoop. Точка, о которой вы говорили выше, - это Thread.start(), которая будет вызвана вообще для нового процесса. Таким образом, вы не найдете start() в config – Ramzy