java中的阻塞式方法是什么意思,比如InputStream中的read()方法。

java中的阻塞式方法是什么意思,比如InputStream中的read()方法。,第1张

java中的阻塞式方法是指在程序调用改方法时,必须等待输入数据可用或者检测到输入结束或者抛出异常,否则程序会一直停留在该语句上,不会执行下面的语句。

java中很多方法都是属于阻塞式方法,比如InputStream中的read()方法和多线程中sleep()方法等。

一、阻塞模式,在调用LISTEN后,程序就会一直在端口处监听,直到有连接到来。

二、非阻塞模式,就是把监听的任务交给系统的一个回调函数,但有连接到来时,系统将返回一个消息,触发你设置的函数。

socket 原形(此函数用来创建套接字)

int socket(int domain , int type , int protocol)

bind 将某个套接字绑定到某个端口

int bind (int sockfd , struct sockaddr *my_addr , int addrlen)

在VB下,设置非阻塞模式API是这么定义的

Public Declare Function WSAAsyncSelect Lib "Winsock.dll" (ByVal s As Integer, ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal lEvent As Long) As Integer

其他WIN32套接字API,如下,大小关系,只放这么多:

Public Declare Function accept Lib "wsock32.dll" (ByVal s As Long, addr As sockaddr, addrlen As Long) As Long

Public Declare Function bind Lib "wsock32.dll" (ByVal s As Long, addr As sockaddr, ByVal namelen As Long) As Long

Public Declare Function closesocket Lib "wsock32.dll" (ByVal s As Long) As Long

Public Declare Function connect Lib "wsock32.dll" (ByVal s As Long, addr As sockaddr, ByVal namelen As Long) As Long

Public Declare Function htonl Lib "wsock32.dll" (ByVal hostlong As Long) As Long

Public Declare Function htons Lib "wsock32.dll" (ByVal hostshort As Long) As Integer

Public Declare Function inet_addr Lib "wsock32.dll" (ByVal cp As String) As Long

Public Declare Function inet_ntoa Lib "wsock32.dll" (ByVal inn As Long) As Long

Public Declare Function listen Lib "wsock32.dll" (ByVal s As Long, ByVal backlog As Long) As Long

Public Declare Function ntohl Lib "wsock32.dll" (ByVal netlong As Long) As Long

Public Declare Function ntohs Lib "wsock32.dll" (ByVal netshort As Long) As Integer

Public Declare Function recv Lib "wsock32.dll" (ByVal s As Long, ByVal buf As Any, ByVal buflen As Long, ByVal flags As Long) As Long

Public Declare Function recvfrom Lib "wsock32.dll" (ByVal s As Long, buf As Any, ByVal buflen As Long, ByVal flags As Long, from As sockaddr, fromlen As Long) As Long


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12170244.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存