execute_async()和execute_concurrent()之间的区别

时间:2015-06-18 07:34:59

标签: python cassandra

我想知道Cassandra查询在python中execute_async()execute_concurrent()之间的区别。

1 个答案:

答案 0 :(得分:4)

execute()将运行一个语句作为阻塞调用,在语句执行完毕之前不会返回。

execute_async()将提交一个语句作为异步调用,该语句将立即返回一个response_future对象,您可以使用该对象在以后检索结果。通过调用execute_async,您的程序可以继续而无需等待语句完成。由于它是非阻塞的,你可以通过反复调用它来提交许多语句,让它们在飞行中#34;在同一时间。

execute_concurrent()是一个阻塞调用,它将并行运行一个语句列表并返回结果列表。与线程池一样,您可以指定一次允许它运行的语句数。如果您希望它立即返回,如果任何语句导致错误,您可以设置一个标志。