当前位置: 首页 > news >正文

可以自己做网站优化吗wordpress颜色

可以自己做网站优化吗,wordpress颜色,wordpress弹窗插件,网站ico目录 一、linux 创建内核线程1.1 kthread_create1.2 kthread_create_worker kthread_queue_work 二、设置线程优先级和调度策略2.1 sched_setscheduler2.2 调度策略 一、linux 创建内核线程 1.1 kthread_create 在 linux 中#xff0c;可以使用 kthread_create 接口创建内核… 目录 一、linux 创建内核线程1.1 kthread_create1.2 kthread_create_worker kthread_queue_work 二、设置线程优先级和调度策略2.1 sched_setscheduler2.2 调度策略 一、linux 创建内核线程 1.1 kthread_create 在 linux 中可以使用 kthread_create 接口创建内核线程该接口原型如下 struct task_struct *kthread_create(int (*threadfn)(void *data), void *data, const char namefmt[], ...);入参含义 - threadfn线程函数的入口点。 - data传递给线程函数的参数。 - namefmt线程的名字可以用格式化字符串指定。示例代码 #include linux/kthread.h #include linux/delay.h// 线程函数 int thread_function(void *data) {while (!kthread_should_stop()) {// 线程的主要工作pr_info(Thread is running\n);ssleep(5); // 休眠5秒}return 0; }// 在合适的地方创建线程 struct task_struct *task; task kthread_create(thread_function, NULL, my_thread); if (!IS_ERR(task)) {wake_up_process(task); // 启动线程 }1.2 kthread_create_worker kthread_queue_work kthread_create_worker 主要用于创建一个用于管理工作队列的工作线程。 函数原型 struct kthread_worker *kthread_create_worker(unsigned int flags, const char namefmt[], ...);入参含义 - flags创建worker时的标志。 - namefmtworker的名称。kthread_queue_work 用于将一个工作项添加到由kthread_worker 管理的工作队列中。 函数原型 void kthread_queue_work(struct kthread_worker *worker, struct kthread_work *work);入参含义 -worker目标worker。 -work要执行的工作。示例代码 #include linux/kthread.h #include linux/delay.h #include linux/slab.hstatic struct kthread_worker *worker; static struct kthread_work work;void work_function(struct kthread_work *work) {pr_info(Work function is running\n); }int __init my_module_init(void) {worker kthread_create_worker(0, my_worker);if (IS_ERR(worker)) {pr_err(Failed to create kthread worker\n);return PTR_ERR(worker);}// 初始化工作kthread_init_work(work, work_function);// 将工作排队kthread_queue_work(worker, work);return 0; }void __exit my_module_exit(void) {kthread_destroy_worker(worker); }module_init(my_module_init); module_exit(my_module_exit);上述示例代码中 kthread_create_worker创建一个工作队列kthread_worker kthread_queue_work 将一个工作项 kthread_work 添加到工作队列 kthread_worker;每调用一次 kthread_queue_work(worker, work);工作项 kthread_work 对应的执行函数 work_function 就会得到一次调用。 二、设置线程优先级和调度策略 2.1 sched_setscheduler sched_setscheduler 接口是 linux 内核中设置特定线程或进程优先级和调度策略的接口。函数原型 int sched_setscheduler(struct task_struct *p, int policy, const struct sched_param *param);入参说明 - p指向目标任务线程或进程的 task_struct 结构体的指针。 - policy调度策略。 - param指向 sched_param 结构体的指针包含了调度参数如优先级。kthread_create_worker sched_setscheduler 创建线程并设置调度策略和优先级 static int __init my_module_init(void) {struct sched_param param;int ret;// 创建内核线程工作队列my_worker kthread_create_worker(0, my_worker);// 获取内核线程的task_structmy_worker_thread my_worker-task;// 设置调度策略和优先级param.sched_priority MAX_RT_PRIO - 1; // 设置为最高实时优先级ret sched_setscheduler(my_worker_thread, SCHED_FIFO, param);return 0; }kthread_create sched_setscheduler 创建线程并设置调度策略和优先级 // 线程函数 static int thread_function(void *data) {while (!kthread_should_stop()) {}return 0; }static int __init my_module_init(void) {struct sched_param param;int ret;// 创建内核线程my_thread kthread_create(thread_function, NULL, my_thread);// 设置调度策略和优先级param.sched_priority MAX_RT_PRIO - 1; // 设置为最高实时优先级ret sched_setscheduler(my_thread, SCHED_FIFO, param);// 启动内核线程wake_up_process(my_thread);return 0; }2.2 调度策略 SCHED_NORMAL普通调度策略也称为 SCHED_OTHER。Linux 默认的普通任务调度策略基于时间片轮转调度算法适用于大多数用户进程和内核线程。 SCHED_FIFO先进先出调度策略。使用该策略时系统优先调用高优先级的任务想通优先级的任务按照先到先服务的顺序执行只有在队列中所有优先级最高的任务都执行完或者放弃 CPU 后才会执行其他任务。优先级使用 sched_param 结构中的 sched_priority 成员设置值越小优先级越高0 最高。 SCHED_RR循环调度策略。优先高优先级任务相同优先级先进先出每个任务时间片轮转类似于 SCHED_FIFO但每个任务有一个时间片如果任务在该时间片内没有运行完毕会将任务移到队列末尾等待下一轮调度。也可以通过 sched_param 结构的 sched_priority 设置优先级。 SCHED_BATCH用于低优先级任务的批处理。用于大量计算密集型任务通常在系统负载较低时调度器会执行 SCHED_BATCH 线程。 SCHED_IDLE专为低优先级的后台任务设计。只有在没有其他更重要的任务需要执行时才会考虑执行 SCHED_IDLE 线程。 SCHED_DEADLINE允许任务在预定的截止时间内完成执行以满足实时系统对任务响应时间的严格要求。deadline 调度策略为每个任务分配固定的 CPU 时间片Budget并指定每个周期内允许执行的最大时间量Period。 参考 SCHED_FIFO与SCHED_OTHER调度机制 【Linux 内核】进程管理 - 进程优先级 ② ( prio 调度优先级 | static_prio 静态优先级 | normal_prio 正常优先级 | rt_priority 实时优先级 )
http://www.dnsts.com.cn/news/199383.html

相关文章:

  • 自己建设网站需要花多少钱网站建设的售后服务
  • 手机网站开发 图库类济南网站建设公司-远大云.
  • 汉中微信网站建设推广怎么做自己的网站推广
  • 一般通过486毕节做网站优化
  • 公司网站建设调研背景青鸟网站开发实例
  • 网站的内链优化策略济南seo整站优化厂家
  • 芜湖做网站长春公司网站推广
  • wordpress去除版权网站seo标题优化技巧
  • 网站开发工程师职业WordPress主题开发核心主食
  • wordpress主题原理seo搜索价格
  • 建企业网站要多少钱淘客网站免费开源源码
  • 苏州公司网站开发申请了域名 网站怎么建设呢
  • 中国建设银行积分查询网站竞价推广外包公司
  • iis做网站文件下载做海外购网站
  • 国外美容网站在百度上做网站有用吗
  • 2008建立的php网站慢自助建站信息发布网企业
  • 怎么找做网站的人做网站要学的教程
  • 如何拷贝服务器里面网站做备份百度搜索引擎录入网站
  • 玩具网站建设服务公司可以做网站的公司有哪些
  • 手机开网站无锡论坛网本地网站
  • 瑞安做微网站泰州网络营销
  • 专科医院网站建设源码下载网站推荐
  • 余姚市住房和城乡建设局网站php学校网站源码
  • 成都网站建设小公司排名wordpress性能
  • 专业网站制作公司地址seo最好的网站源码
  • 网站图片用什么格式北京平台网站建设哪家好
  • 南昌网优化网站设计公司乐装网
  • 自适应网站平台thinkphp 网站开发
  • 网站开发源程序wordpress 4.9 漏洞
  • 网站建设板块如何分类做市场浏览什么网站