有必要使用递归互斥量的一种情况。这里 有一个超时函数,它允许安排另一个函数在未来的某个时间运行。假设线程并不是很昂贵当资源 就可以为每个挂起的函数创建一个线程。线程在时间未到时将一直等待,时间到了再调用请求的函数 如果我们不能创建线程,或者安排函数运行时间已过,这时候问题就出现了,在这些情况下,我们只需要在当前上下文中调用之前请求运行的函数。 因为函数要获取的锁和我们现在占用的是同一把锁,所以除非函数是递归的,否则就会出现死锁。 makethread 函数分离状态创建线程。传给timeout的f […]