KinesisMessageHandler类接受一个输入为AmazonKinesisAsync的构造函数。AmazonKinesisAsync是一个异步访问Kinesis的接口。这是否意味着对KinesisMessageHandler没有同步支持?
同样,在KinesisMessageHandler中setSync方法的相关性是什么?
AmazonKinesisAsync
实际上只是依赖于Java的Future
,它可以很容易地转向同步,通过它的get()
方法阻止行为。这就是setSync()
对KinesisMessageHandler
状态的作用。将AmazonKinesisAsync
作为输入并不意味着我们不能进行同步操作。如果AmazonKinesis
契约是相反的,我们将无法执行异步操作。