made the base data structure non-blocking