带优先级的多任务管理模块(C)

上传:wlaith2278 浏览: 39 推荐: 0 文件:RAR 大小:7.62KB 上传时间:2018-12-25 10:40:53 版权申诉
多任务多线程管理模块,任务有优先级,一个任务执行完毕,按照优先级高低执行另一个任务 1)如何使用: 1. 声明一个HashTaskList,或在栈上动态获取; 2. 调用InitTaskList初始化上一步的HashTaskList 3. 调用StartTaskManager开始启动任务管理 ***** 对于一个HashTaskList而言,以上2个函数只调用一次 4. 调用ApplyTask向第一步得到的结构对象添加任务,每调用一次添一个任务 2)如 何终止任务管理功能: 1. 程序结束,终止程序既停止管理并且释放所有资源,请看2).2括号的内容 2. 调用某个函数,这个功能未写(考虑到模块作为服务运行,不需要终止任务管理的函数) 需要取消所有1v1管理线程,在此需要一个列表保存这些线程的ID 需要清理表当中的互斥锁和信号变量,如果1).1.是动态分配,要释放 3)关于改进: 1. 回收资源的线程和TaskList reclaim[LEVEL_ARRAY_LIMIT];是可以省掉的 但考虑到模块功能的延伸: 如果任务执行失败,先移动到某个地方,过段时间在放回来重试,等等... 其实还有很多可能用到它的地方...所以,依旧保留 2. 有多少个任务可以并发管理目前是固定的 其实可添加一个对StartTaskManager所生成的线程管理的数据结构 这样就能动态的增加或减少任务管理的1v1线程 ***** 可事实上我并不想做这个管理的东西在里面 ***** 没有必要,对提供服务的程序而言这东西一般是固定不变的 ********************************************* 1) How to use: 1. Declare a HashTaskList, or dynamic access stack; 2. Call the initialization of step HashTaskList InitTaskList 3. StartTaskManager started calling the task manager ***** For a HashTaskList, the above two functions called only once 4. Call ApplyTask get to the first structure of an object to add the task, each call to add a task 2) how to terminate the task management functions: 1. End of the process, terminate the program only to stop and release all resources management, see 2) .2 contents of brackets 2. Call a function, this function does not write (taking into account the module as a service and does not require termination of the task management function) One to One managed to cancel all the threads, a list needed in this thread ID to save the Need to clean up the table among the mutex and signal variables, if 1) .1. Is dynamically allocated, to be released 3) on the improvement of: 1. Recycling resources thread and TaskList reclaim [LEVEL_ARRAY_LIMIT]; is to save the But taking into account the extension module function: If the task fails, the first move to a place, over time retry the put back, and so on ... There are many possible places to use it ... so, still retained 2. How many tasks can be complicated to manage the current is fixed In fact, you can add an StartTaskManager generated data structure thread management This can increase or decrease in the dynamic task management in the 1v1 thread ***** Can be a matter of fact I do not want to do this management stuff in there ***** Unnecessary procedures on service delivery in terms of these things are generally fixed
上传资源
用户评论

bigarmer 2018-12-25 10:40:53

代码不错,感谢分享!!!

相关推荐
C语言括号优先级表达式计算
表达式计算:支持优先级计算,支持括号,括号嵌套;表达式验证,
C
0B
2019-09-05 06:28
C++优先级
C++ priority
TXT
0B
2019-06-23 22:59
C#如何对多线程多任务管理demo
主要通过一个小demo介绍了C#如何对多线程、多任务管理,需要的朋友可以参考下
PDF
39KB
2020-09-29 09:38
C语言优先级
在C语言的编程中,往往要注意优先级,不然程序运行就会出错
PDF
0B
2019-02-18 06:29
android多任务管理
android多任务管理器,很好的开源框架源代码,以供参考!
ZIP
0B
2018-12-28 22:20
winform多线程多任务管理
简单winform多线程多任务管理demo可根据业务进一步扩展开发,如:下载器等
ZIP
0B
2019-07-11 09:39
多任务管理模拟器
清华大学2011-2012学年春季学期谌卫军老师操作系统课程第一次作业
ZIP
0B
2019-09-06 16:07
多任务管理工具
1、线程池实现任务管理:包括添加/删除/查询任务。 2、特别适合耗时较长/可参数化执行的控制台程序管理,比如此工具开发之时用于流媒体协议转码。 4、可单独运行,通过第三方工具udp发生json格式的任
ZIP
13.89MB
2021-04-23 10:27
基于优先级自动排课模块设计与实现
本文描述了排课问题及在设计排课系统时应考虑的各种约束条件,在分析其它排课算法的同时结合孝感学院实际情,提出了一种基于优先级的自动排课算法,并以该算法设计了一个排课系统。经实验,该系统获得了较快的处理速
PDF
0B
2020-06-19 14:53
关于C语言优先级介绍
对于C语言不懂优先级的,需要好好看看这个文档了,适合初学者
DOC
0B
2019-02-18 06:29
C运算符优先级
C运算符的优先级
DOCX
0B
2019-09-04 07:47
C++进程优先级调度进程优先级调度进程优先级调度
C++进程优先级调度进程优先级调度进程优先级调度C++进程优先级调度进程优先级调度进程优先级调度
DOC
36KB
2020-08-15 00:10
C语言符号优先级
C语言符号优先级, 描述符号之间运算的先后顺序
PDF
0B
2019-02-18 06:28
C语言优先级.pdf
C语言优先级.pdf
.pdf
134.10 KB
2022-07-13 06:53
KKNDME天涯-多任务管理
KKNDME天涯是一款功能强大的多任务管理器,能够帮助用户方便地管理多个进程和程序。该软件支持实时监控和结束程序、优化系统性能、清理内存并提供详细的任务信息等功能。它简单易用、占用系统资源少,适用于各
md
439.67KB
2023-05-08 09:24