* Refactor.

Use MonitorMixin instead of @mutex, I think the code is better this way.