Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 反应器与前置器_Java_Design Patterns - Fatal编程技术网

Java 反应器与前置器

Java 反应器与前置器,java,design-patterns,Java,Design Patterns,有人能解释反应器模式和促反应器模式之间的区别吗? 我知道在reactor模式中,操作是同步的,而在proactor中,操作是异步的,而且在reactor中,操作是由处理程序完成的,处理程序由reactor移交给客户端。(如果我错了,请纠正我) 此外,这些模式中的哪一种用于故障安全,哪一种用于故障快速?参考以及wiki文章我想说,proactor是故障安全的,reactor是故障快速的。Proactor有一个完成处理程序,这为它提供了一个更“安全”的方法。如果一个任务在阻塞大量资源的情况下失败,那

有人能解释反应器模式和促反应器模式之间的区别吗? 我知道在reactor模式中,操作是同步的,而在proactor中,操作是异步的,而且在reactor中,操作是由处理程序完成的,处理程序由reactor移交给客户端。(如果我错了,请纠正我)


此外,这些模式中的哪一种用于故障安全,哪一种用于故障快速?

参考以及wiki文章我想说,proactor是故障安全的,reactor是故障快速的。Proactor有一个完成处理程序,这为它提供了一个更“安全”的方法。如果一个任务在阻塞大量资源的情况下失败,那么像reactor这样的同步环境将有很大的失败。希望这有帮助

reactor模式中,您将轮询设备是否准备就绪,而在proactor中,您将轮询设备是否完成某项操作

reactor模式的好例子有:epoll(Linux)、kqueue(MacOS、FreeBSD)、select(Linux、MacOS、Windows)方法。
proactor模式的一个很好的例子是Windows IOCP方法。

这个故障保护/故障快速模式有更多的背景知识,还是这是一个家庭作业问题?我的意思是,你有什么具体的目标吗?看看这类家庭作业问题。我在寻找故障保护,我开始了解反应堆的模式。但我找不到任何文件说明我们必须如何在反应堆模式中实现故障安全。如果您要参考非标准模式,那么您应该包括对从中获得的相应模式目录/存储库的引用。