use synchronized wrapper for in_use and available
basic docs