add mutex and block_queue