我正在创建一个用户定义的线程库。我使用Round-Robin
调度算法并使用context switching
方法。但是,当线程在分配的time slot
之前完成执行时,我无法知道该怎么做。该计划正在终止。我实际上想通过在当前线程终止时调用schedule
函数来重新安排所有线程。
我找到了两种方法来克服这个问题。
thread_exit
函数。stack contents
,以便在当前函数终止后执行thread_exit
函数。但我无法找到如何应用这些解决方案.... 那里的任何人......请帮助我...
答案 0 :(得分:0)
听起来你有一点设计缺陷。如果我正确地理解你,你正在尝试实现一个解决方案,你可以分配线程来执行某些任务,并在任务完成后,线程空闲等待下一个任务。
如果这是真的,我想我会设计类似守护进程或服务来管理进入任务的队列,一个负责执行任务的线程池,用于监听新任务的控制器。