Question

In the documentation of the threading module it says:

All of the objects provided by this module that have acquire() and release() methods can be used as context managers for a with statement. The acquire() method will be called when the block is entered, and release() will be called when the block is exited.

I was wondering if it is called in blocking or non-blocking mode?

Was it helpful?

Solution

From looking at the CPython source, it appears that it's called with default arguments, which means in blocking mode.

The methods you want to look at in particular are __enter__(), which is called at the beginning of the with block, and __exit__(), which is called at the end.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top