如果有待处理的请求,Cassandra Java Driver是否会正常关闭?

时间:2015-04-08 21:12:16

标签: cassandra datastax-java-driver

例如,

 for(..){
     ses.executeAsync(statement);
 }
 ses.close();

驱动程序将关闭,直到所有请求都被发送出去?

1 个答案:

答案 0 :(得分:4)

如果有关于该会话的任何待处理请求,则不会立即关闭与该会话关联的连接。相反,他们将被安排在2 * readTiimeoutMillis之后最终关闭。

当会话关闭时,会通过调用connection#closeAsync调用connection#tryTerminate(false)来丢弃其每个连接。由于使用'false'调用tryTerminate,因此不会强制关闭连接unless there are no pending requests。如果在2 * readTimeoutMillis之后有待处理的请求gets scheduled for deletion