implement concurrent commandqueue