java,active
<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>
java active是什么,让我们一起了解一下?
在java中,Active Object模式是一种异步编程模式。它通过对方法的调用与方法的执行进行解耦来提高并发性。它的核心是允许任务的提交(相当于对异步方法的调用)和任务的执行(相当于异步方法的真正执行)分离。
首先从调用方代码来看,调用一个Active Object对象的方法与调用普通Java对象的方法并无太大差别。
1 ActiveObject ao=...;2 Future future = ao.doSomething("data");3 //执行其它操作4 String result = future.get();5 System.out.println(result);
那么Active Object模式的架构是什么,有什么作用?
1、当Active Object模式对外暴露的异步方法被调用时,与该方法调用相关的上下文信息,包括被调用的异步方法名(或其代表的操作)、调用方代码所传递的参数等,会被封装成一个对象。
该对象被称为方法请求(Method Request)。方法请求对象会被存入Active Object模式所维护的缓冲区(Activation Queue)中,并由专门的工作线程负责根据其包含的上下文信息执行相应的操作。
也就是说,方法请求对象是由运行调用方代码的线程通过调用Active Object模式对外暴露的异步方法生成的,而方法请求所代表的操作则由专门的线程来执行,从而实现了方法的调用与执行的分离,产生了并发。
2、Active Object模式的主要参与者有以下几种。
Proxy:负责对外暴露异步方法接口。当调用方代码调用该参与者实例的异步方法doSomething时,该方法会生成一个相应的MethodRequest实例并将其存储到Scheduler所维护的缓冲区中。doSomething方法的返回值是一个表示其执行结果的外包装对象:Future参与者的实例。异步方法doSomething运行在调用方代码所在的线程中。
MethodRequest:负责将调用方代码对Proxy实例的异步方法的调用封装为一个对象。该对象保留了异步方法的名称及调用方代码传递的参数等上下文信息。它使得将Proxy的异步方法的调用和执行分离成为可能。其call方法会根据其所包含上下文信息调用Servant实例的相应方法。
ActivationQueue:负责临时存储由Proxy的异步方法被调用时所创建的MethodRequest实例的缓冲区。
Scheduler:负责将Proxy的异步方法所创建的MethodRequest实例存入其维护的缓冲区中。并根据一定的调度策略,对其维护的缓冲区中的MethodRequest实例进行执行。其调度策略可以根据实际需要来定,如FIFO、LIFO和根据MethodRequest中包含的信息所定的优先级等。
Servant:负责对Proxy所暴露的异步方法的具体实现。
Future:负责存储和返回Active Object异步方法的执行结果。
-
苹果手机长图怎么截图,苹果手机截长图的两种方法
1、长截图办法一iOS13上新之后自带的长截图方法,是在我们浏览网页的时候使用的。操作方法:上音量键+开关键一起按下,然后点开截好的图片,选择“整页”截图即可。2、长截图方法二利用QQ实现长截图。操作方法:首先就是需要我们打开QQ,然后试着上音量键+开关键一起按下...
-
省内移动数据流量是指什么
省内移动数据流量是指你的SIM卡所属省份的可用GPRS流量,如果出了你的卡所属的省份,去别的省,那省内移动数据流量就不可以使用,只能使用全国通用流量。移动数据流量有省内流量和全国通用流量,国内流量和省内流量是有所区别的。首先优先度不同:正常情况下,如果用户在自...
-
关于底噪的意思介绍
1、底噪亦称背景噪声,基本所有的好耳机都有底噪,耳机底噪一般都是因为前端的问题,耳机的灵敏度越高对于底噪就越敏感,一些高灵敏度和低阻抗的耳机会把底噪放大,如果加大音量的情况下,底噪会更加的明显。2、检测MP3底噪,一般方法是在夜晚等比较安静的环境中戴上耳机,播...
-
黑色背景拍照窍门详解
1、调整拍摄角度,寻找背景:既然是拍摄黑背景,在拍摄前我们尽量选择深色的背景,这样也就更加容易达到效果。不过深色不一定要是纯黑色,只要颜色较为深沉,偏向暗色调的均可。拍摄前多多观察,寻找不同的拍摄角度,以找到有反差的深色作为背景。要多尝试不同的角度,直至主体...