os::socket_available(int fd, jint *pbytes)
-
//Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) int os::socket_available(int fd, jint *pbytes) { // Linux doc says EINTR not returned, unlike Solaris int ret = ::ioctl(fd, FIONREAD, pbytes); //%% note ioctl can return 0 when successful, JVM_SocketAvailable // is expected to return 0 on failure and 1 on success to the jdk. return (ret < 0) ? 0 : 1; }