C++标准,[thread.mutex.requirements.mutex]/21和22: 表达式m.unlock()应该是良好的形式,并具有以下语义: 要求:调用线程必须拥有互斥锁。 在要求条款中违反要求会导致未定义的行为。