2016-12-05 19 views
-1

我試圖找到用於從JVM中讀取網絡流的Linux套接字API,但是我在以下代碼中被阻止,因爲我不知道如何繼續檢查:: recv,因爲我不知道哪個類聲明瞭\執行它,因爲它前面沒有類名。當JVM調用時可以找到Linux套接字API?

int os::recv(int fd, char *buf, int nBytes, int flags) { 
    INTERRUPTIBLE_RETURN_INT(::recv(fd, buf, nBytes, flags), os::Solaris::clear_interrupted); 
} 

at file openjdk-7-fcs-src-b147-27_jun_2011\openjdk\hotspot\src\os\solaris\vm\os_solaris.cpp 

我的問題是如何得到該:: recv的和在哪兒能找到Linux的套接字API,用於讀取由JVM調用網絡流的聲明\執行。

回答

1

::recv()是操作系統提供的系統調用。沒有更多的你可以走這條道路。

+0

如果:: recv()存在於以下Linux源代碼中,如4.8版本?如果是的話,你可以幫忙弄清楚。 http://lxr.free-electrons.com/source/ –

+0

你在開玩笑吧?幫助你「找出」依賴於TCP,UDP,原始套接字,Unix域套接字的API ......?您需要的教科書是Stevens&Wright,* TCP/IP Illustrated,*第I卷和第II卷,這些厚度約爲六英寸。你無法在StackOverflow上學習這些東西。 – EJP

+0

JVM調用:: recv(),我只想知道Linux中的哪個函數與:: recv()相關。 –

相關問題