yep, I think about this:

Since close can run for a long time, you can get a situation where isOpen true, but use context is impossible. What do you think about this situation?