是什么 Query.Release() 你在幕后工作吗?“将查询返回到池”是什么意思?什么时候 Query.Get() 应在何时使用 Query.GetRelease() ?
Query.Release()
Query.Get()
Query.GetRelease()
wr98u20j1#
正如你在文件中注意到的https://godoc.org/github.com/gocql/gocql#query. 释放它确实会将查询释放回池中。当您不想再使用有问题的特定查询时,应该使用它。如果您想提高查询的性能,可以重用未发布的查询,因为您不需要执行创建查询时总是发生的任何初始化。确切地说,什么时候应该使用每种方法当然取决于你的情况,但一般原则如上所述。通常你会把 defer q.Release() 直接创建查询,但这取决于具体的用例。至于 gocqlx.GetRelease() 它为您提供了一种非常方便和安全的方式来查询和获取结果,而无需处理清理。
defer q.Release()
gocqlx.GetRelease()
1条答案
按热度按时间wr98u20j1#
正如你在文件中注意到的https://godoc.org/github.com/gocql/gocql#query. 释放它确实会将查询释放回池中。当您不想再使用有问题的特定查询时,应该使用它。
如果您想提高查询的性能,可以重用未发布的查询,因为您不需要执行创建查询时总是发生的任何初始化。
确切地说,什么时候应该使用每种方法当然取决于你的情况,但一般原则如上所述。通常你会把
defer q.Release()
直接创建查询,但这取决于具体的用例。至于
gocqlx.GetRelease()
它为您提供了一种非常方便和安全的方式来查询和获取结果,而无需处理清理。