中使用native关键字之间的区别
public static native void sleep(long millis) throws InterruptedException
和
public static void sleep(long millis, int nanos) throws InterruptedException
答案 0 :(得分:0)
使用native
关键字表示该方法是在本机代码中实现的。 (C / C ++)使用JNI。既然你也标记了android,这里有一些文档可以进一步说明。 JNI Tips - Android
答案 1 :(得分:0)
Thread.sleep(long)是原生的,因为它直接映射到底层操作系统的线程管理(即在Windows上,它的行为与Linux或Solaris或任何其他系统不同)。 Thread.sleep(long,int)不是本机的,因为它在Java中执行一些内部逻辑,然后调用Thread.sleep(long)。有关详细信息,请参阅源代码。
来源:http://www.coderanch.com/mobile/t/472436/threads/java/Sleep-method-Native?foo=a