我的理解是,如果非阻塞 Web 服务器(node.js、eventmachine、tornado)调用阻塞库,它们可能会停止。Golang 也是这样吗?如果一个 goroutine 被阻塞,另一个 goroutine 是否会自动获得对 CPU 的访问权限,或者他们是否必须等待被阻塞的 goroutine “让步”?如果是前者,那么库不需要是非阻塞的,是吗?我问是因为我还没有看到任何明确声明它们是非阻塞的 Redis/Mongo 库。
相关分类