有人能提供一个外行的定义和用例吗?
发布于 2010-03-09 16:40:08
“阻塞”意味着调用者等待,直到被调用者完成其处理。例如,来自套接字的“阻塞读”等待,直到有数据要返回;“非阻塞”读不会,它只是返回是否有读的指示(通常是计数)。
您听到的术语主要是关于访问不一定需要CPU关注的资源的APIs例如,I/O。您也可以在多线程中听到它:从线程A到线程B的调用可能被设计为“阻塞”(阻止线程A),直到线程B达到处理或至少接受请求的相关状态。(最明显的例子是"join",它通常意味着“我,线程A,希望等到线程B终止”--在退出多线程程序时使用。)
发布于 2010-03-09 16:40:52
简而言之:如果您调用一个函数,该函数阻止程序继续运行,直到用户执行了某个操作(或您的程序无法控制的其他操作),则此调用称为阻塞调用。
https://stackoverflow.com/questions/2407589
复制相似问题