CN109254834B - 一种多线程启动同步方法 - Google Patents
一种多线程启动同步方法 Download PDFInfo
- Publication number
- CN109254834B CN109254834B CN201710568634.0A CN201710568634A CN109254834B CN 109254834 B CN109254834 B CN 109254834B CN 201710568634 A CN201710568634 A CN 201710568634A CN 109254834 B CN109254834 B CN 109254834B
- Authority
- CN
- China
- Prior art keywords
- starting
- thread
- value
- trigger event
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供了一种多线程启动同步方法,通过采取三种状态和事件机制来控制多线程启动,使线程无序的启动过程变成有序的启动过程,从而避免系统的运转出现异常,也可以避免超时循环等待降低系统性能的情况,能够在不需要定义全局参数变量,也不需要考虑延迟,以及避免死锁的情况下实现多线程启动同步。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种多线程启动同步方法。
背景技术
线程启动时经常需要主线程向子线程传递参数,但是因线程之间的运行时间片随机,经常出现一个线程任务执行一半就切换到了另外一个线程,这样就导致主线程向子线程传递的参数在子线程还没有获取到相关参数信息时,主线程就将参数信息释放了,或者导致主线程还有准备好后续的资源,子线程已经执行到使用主线程的该资源了,从而使得主线程或者子线程出现异常崩溃。
在线程退出时也存在类似问题,当主线程退出时希望子线程也同步退出,但不能通过暴力方式关闭子线程,因为这样会导致资源没有释放从而出现资源泄漏,同时子线程退出时也存在线程启动时的类似问题,出现主线程或者子线程异常崩溃现象。
现有技术实现在线程启动进行参数传递时一般采取全局共享参数变量和启动后sleep延时方式,或者简单事件等待机制;退出时一般使用延时方式。
现有技术采取全局变量模式需要定义全局参数变量,该方式一方面浪费系统存储空间,也增加了维护复杂度,增大了软件耦合性;另外使得模块可重入性、可维护性、可重用性变得较差。
现有技术的延时机制的延时时长而无法精确量化,从而使得模块经常出现参数传递同步失败问题。
简单事件同步等待机制也容易造成死锁。
发明内容
有鉴于此,本申请提供一种多线程启动同步方法,能够在不需要定义全局参数变量,也不需要考虑延迟时长问题,同时可避免死锁的情况下实现多线程的启动同步。
为解决上述技术问题,本申请的技术方案是这样实现的:
一种多线程启动同步方法,其特征在于,该方法包括:
配置启动共享状态变量参数,以及启动触发事件;
通过主线程模块启动主线程,并将配置的初始状态值赋值给启动共享状态变量;
通过主线程模块启动子线程模块,并将参数信息传输给子线程模块;
通过子线程模块启动子任务线程,接收主线程模块传输的参数信息并存储;
使用主线程模块判断当前启动共享状态变量的值是否为初始状态值,如果是,将启动共享状态变量的值修改为配置的第一状态值;等待启动触发事件,在接收到启动触发事件时,运行主线程;否则,修改启动共享状态变量的值为初始状态值,并发送启动触发事件,继续运行主线程;
使用子线程模块判断当前启动共享状态变量的值是否为初始状态值,如果是,将启动共享状态变量的值修改为配置的第二状态值,等待启动触发事件,在接收到启动触发事件时,运行子线程;否则,修改启动共享变量参数的值为初始状态值,并发送启动触发事件,继续运行子线程。
由上面的技术方案可知,本申请中采取三种状态和事件机制来控制多线程启动,使线程无序的启动过程变成有序的启动过程,从而避免系统的运转出现异常,也可以避免超时循环等待降低系统性能的情况,本申请提供的技术方案不需要定义全局参数变量,也不需要考虑延迟时长问题,还可以避免死锁,双方一旦条件具备即可继续执行后续动作。
附图说明
图1为本申请实施例中多线程启动同步流程示意图;
图2为本申请实施例中子线程退出同步流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并举实施例,对本发明的技术方案进行详细说明。
本申请实施例中采取三种状态和事件机制来控制多线程启动和退出,使线程无序的启动或退出过程变成有序的启动和退出过程,从而避免系统的运转出现异常,也可以避免超时循环等待降低系统性能的情况,本申请提供的技术方案不需要定义全局参数变量,也不需要考虑延迟时长,还可以避免死锁,双方一旦条件具备即可继续执行后续动作。
本申请实施例提供的技术方案,可以应用于多线程,也可以应用于多进程,多任务的场景下,实现过程类似,本申请实施例中以多线程为例。
为了描述方便,下文统称完成多线程启动和退出同步的设备为处理设备,该处理设备包括一个主线程模块和一个或多个子线程模块。
本申请实施例中处理设备针对多线程启动同步,配置启动共享状态变量,以及启动触发事件;针对多线程退出同步,配置退出共享状态变量,以及退出触发事件。
针对启动同步和退出同步可以配置两组三种状态,也可以配置一组三种状态,启动和退出时共享使用。
本申请实施例中以配置一组三种状态为例,该组中的三种状态分别为:初始状态值、第一状态值,第二状态值;这三个状态值的具体值不限制,但是配置这个状态值各不相同。
如果配置两组三种状态值,一组三种状态值同另外一组三种状态值是否存在相同,不做限制。
下面结合附图,详细说明本申请实施例中多线程启动和退出同步过程。
首先结合附图,详细说明本申请实施例中子线程退出同步过程。
参见图1,图1为本申请实施例中多线程启动同步流程示意图,具体步骤为:
步骤101,处理设备通过主线程模块启动主线程,并将配置的初始状态值赋值给启动共享状态变量。
步骤102,该处理设备通过主线程模块启动子线程模块,并将参数信息传输给子线程模块。
步骤103,该处理设备使用主线程模块判断当前启动共享状态变量的值是否为初始状态值,如果是,执行步骤104;否则,执行步骤106。
步骤104,该处理设备将启动共享状态变量的值修改为配置的第一状态值。
步骤105,该处理设备等待启动触发事件,在接收到启动触发事件时,继续运行主线程,结束本流程。
主线程在等待启动触发事件时,停止运行,接收到启动触发事件时,再继续运行。
步骤106,该处理设备修改启动共享状态变量的值为初始状态值,并发送启动触发事件,继续运行主线程,结束本流程。
本步骤中,可以不设置等待启动触发事件的时间,即相当于设置等待启动触发事件的时间为无限长;在具体实现时,也可以设置等待启动触发事件的时间,以免由于某种原因未接收到启动触发事件,而延迟了线程的运行,下面给出设置等待时间的实现方式:
针对主线程,配置等待启动触发事件的等待时间为第一预设时间;
主线程模块等待启动触发事件时,若第一预设时间内接收到启动触发事件,则运行主线程;
若第一预设时间到时,未接收到启动触发事件,则确定当前启动共享变量参数的值是否为第一状态值,如果是,继续等待启动触发事件;否则,运行主线程。
继续等待启动触发事件后,直到接收到启动触发事件,或经判断确定当前启动共享状态变量的值不为第一状态值时,运行主线程,此时确定参数信息同步完成,即子线程与主线程启动同步完成。
步骤107,该处理设备通过子线程模块启动子任务线程,接收主线程模块传输的参数信息并存储。
步骤107中在启动过程中接收主线程模块传输的参数信息,执行下述操作,即在主线程和子线程启动完成之前,完成参数信息的传输、接收和存储。
步骤108,该处理设备使用子线程模块判断当前启动共享变量参数的值是否为初始状态值,如果是,执行步骤109;否则,执行步骤111。
步骤109,该处理设备将启动共享状态变量的值修改为配置的第二状态值。
步骤110,该处理设备等待启动触发事件,在接收到启动触发事件时,继续运行子线程,结束本流程。
步骤111,该处理设备修改启动共享状态变量的值为初始状态值,并发送启动触发事件,继续运行子线程。
子线程在等待启动触发事件时,停止运行,接收到启动触发事件时,再继续运行。
本步骤中,针对子线程,可以不设置等待启动触发事件的时间,即相当于设置等待启动触发事件的时间为无限长;在具体实现时,也可以设置等待启动触发事件的时间,以免由于某种原因未接收到启动触发事件,而延迟了线程的运行,下面给出设置等待时间的实现方式:
处理设备配置等待启动触发事件的等待时间为第二预设时间;
子线程模块等待启动触发事件时,若在第二预设时间内接收到启动触发事件,则运行子线程;
若第二预设时间到时,未接收到启动触发事件,则确定当前启动共享状态变量的值是否为第二状态值,如果是,继续等待启动触发事件;否则,运行子线程。
继续等待启动触发事件后,直到接收到启动触发事件,或经判断确定当前启动共享变量参数的值不为第二状态值时,运行子线程,此时确定参数信息同步完成,即子线程与主线程启动同步完成。
上述步骤中,步骤103和步骤107执行时,不分先后顺序,同时执行。
下面结合附图,详细说明本申请实施例中子线程退出同步过程。
参见图2,图2为本申请实施例中子线程退出同步流程示意图。具体步骤为:
步骤201,当需要结束任一子线程时,处理设备通过主线程模块将配置的初始状态值赋值给退出共享状态变量。
步骤202,该处理设备通过主线程模块通知子线程模块进行子线程的退出。
步骤203,该处理设备使用主线程模块判断当前退出共享状态变量的值是否为初始状态值,如果是,执行步骤204;否则,执行步骤206。
步骤204,该处理设备将退出共享状态变量的值修改为配置的第一状态值。
步骤205,该处理设备等待退出触发事件,在接收到退出触发事件时,继续运行主线程,结束本流程。
步骤206,该处理设备修改退出共享状态变量的值为初始状态值,并发送退出触发事件,继续运行主线程,结束本流程。
本步骤中,可以不设置等待退出触发事件的时间,即相当于设置等待退出触发事件的时间为无限长;在具体实现时,也可以设置等待退出触发事件的时间,以免由于某种原因未接收到退出触发事件,而延迟了线程的运行,或退出,下面给出设置等待时间的实现方式:
针对主线程,配置等待退出触发事件的等待时间为第三预设时间;
通过主线程模块等待退出触发事件时,若第三预设时间内接收到退出触发事件,则继续运行主线程;
若第三预设时间到时,未接收到退出触发事件,则确定当前退出共享状态变量的值是否为第一状态值,如果是,继续等待退出触发事件;否则,继续运行主线程。
继续等待退出触发事件后,直到接收到退出触发事件,或经判断确定当前退出共享状态变量的值不为第一状态值时,运行主线程,此时确定对应子线程可以正常退出。
步骤207,该设备通过子线程模块接收主线程模块发送的退出通知。
步骤208,该处理设备使用子线程模块判断当前退出共享状态变量的值是否为初始状态值,如果是,执行步骤209;否则,执行步骤211。
步骤209,该处理设备将退出共享状态变量的值修改为配置的第二状态值,执行步骤211。
步骤210,该处理设备等待退出触发事件,在接收到退出触发事件时,结束子线程。结束本流程。
步骤211,该处理设备修改退出共享状态变量的值为初始状态值,并发送退出触发事件,结束子线程。
本步骤中,可以不设置等待退出触发事件的时间,即相当于设置等待退出触发事件的时间为无限长;在具体实现时,也可以设置等待退出触发事件的时间,以免由于某种原因未接收到退出触发事件,而延迟了线程的运行,或退出,下面给出设置等待时间的实现方式:
针对子线程,配置等待退出触发事件的等待时间为第四预设时间;
通过子线程模块等待退出触发事件时,若第四预设时间内接收到退出触发事件,则结束子线程;
若第四预设时间到时,未接收到退出触发事件,则确定当前退出共享状态变量的值是否为第二状态值,如果是,继续等待退出触发事件;否则,结束子线程。
继续等待退出触发事件后,直到接收到退出触发事件,或经判断确定当前退出共享状态变量的值不为第二状态值时,运行主线程,此时确定对应子线程可以正常退出。
第三预设时间和第四预设时间可以相同,也可以不同,同第一预设时间和第二预设时间也可以相同,也可以不同,本申请不做限制,使用者可以根据实际需要进行配置。
上述步骤中,步骤203和步骤208执行时,不分先后顺序,同时执行。
综上所述,本申请通过采取三种状态和事件机制来控制多线程启动和退出,使线程无序的启动或退出过程变成有序的启动和退出过程,从而避免系统的运转出现异常,也可以避免超时循环等待降低系统性能的情况,本申请提供的技术方案不需要定义全局状态变量,也不需要考虑延迟时长,还可以避免死锁,双方一旦条件具备即可继续执行后续动作。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (7)
1.一种多线程启动同步方法,其特征在于,该方法包括:
配置启动共享状态变量,以及启动触发事件;
通过主线程模块启动主线程,并将配置的初始状态值赋值给启动共享状态变量;
通过主线程模块启动子线程模块,并将参数信息传输给子线程模块;
通过子线程模块启动子任务线程,接收主线程模块传输的参数信息并存储;
使用主线程模块判断当前启动共享状态变量的值是否为初始状态值,如果是,将启动共享状态变量的值修改为配置的第一状态值;等待启动触发事件,在接收到启动触发事件时,继续运行主线程;否则,修改启动共享状态变量的值为初始状态值,并发送启动触发事件,继续运行主线程;
使用子线程模块判断当前启动共享状态变量的值是否为初始状态值,如果是,将启动共享状态变量的值修改为配置的第二状态值,等待启动触发事件,在接收到启动触发事件时,继续运行子线程;否则,修改启动共享状态变量的值为初始状态值,并发送启动触发事件,继续运行子线程。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:针对主线程,配置等待启动触发事件的等待时间为第一预设时间;
通过主线程模块等待启动触发事件时,若第一预设时间内接收到启动触发事件,则运行主线程;
若第一预设时间到时,未接收到启动触发事件,则确定当前启动共享变量参数的值是否为第一状态值,如果是,继续等待启动触发事件;否则,运行主线程。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:针对子线程,配置等待启动触发事件的等待时间为第二预设时间;
通过子线程模块等待启动触发事件时,若第二预设时间内接收到启动触发事件,则运行子线程;
若第二预设时间到时,未接收到启动触发事件,则确定当前启动共享变量参数的值是否为第二状态值,如果是,继续等待启动触发事件;否则,运行子线程。
4.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:配置退出共享状态变量,以及退出触发事件;
当需要结束任一子线程时,通过主线程模块将配置的初始状态值赋值给退出共享状态变量,并通知子线程模块进行子线程的退出;
使用主线程模块判断当前退出共享状态变量的值是否为初始状态值,如果是,将退出共享状态变量的值修改为配置的第一状态值;等待退出触发事件,在接收到退出触发事件时,继续运行主线程;否则,修改退出共享状态变量的值为初始状态值,并发送退出触发事件,继续运行主线程;
使用子线程模块判断当前退出共享状态变量的值是否为初始状态值,如果是,将退出共享状态变量的值修改为配置的第二状态值,等待退出触发事件,在接收到退出触发事件时,结束子线程;否则,修改退出共享状态变量的值为初始状态值,并发送退出触发事件,结束子线程。
5.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:针对主线程,配置等待退出触发事件的等待时间为第三预设时间;
通过主线程模块等待退出触发事件时,若第三预设时间内接收到退出触发事件,则继续运行主线程;
若第三预设时间到时,未接收到退出触发事件,则确定当前退出共享变量参数的值是否为第一状态值,如果是,继续等待退出触发事件;否则,继续运行主线程。
6.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:针对子线程,配置等待退出触发事件的等待时间为第四预设时间;
通过子线程模块等待退出触发事件时,若第四预设时间内接收到退出触发事件,则结束子线程;
若第四预设时间到时,未接收到退出触发事件,则确定当前退出共享变量参数的值是否为第二状态值,如果是,继续等待退出触发事件;否则,结束子线程。
7.根据权利要求1-6任一项所述的方法,所述初始状态值、第一状态值、第二状态值不同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710568634.0A CN109254834B (zh) | 2017-07-13 | 2017-07-13 | 一种多线程启动同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710568634.0A CN109254834B (zh) | 2017-07-13 | 2017-07-13 | 一种多线程启动同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109254834A CN109254834A (zh) | 2019-01-22 |
CN109254834B true CN109254834B (zh) | 2021-05-14 |
Family
ID=65050951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710568634.0A Expired - Fee Related CN109254834B (zh) | 2017-07-13 | 2017-07-13 | 一种多线程启动同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109254834B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407214B (zh) * | 2021-06-24 | 2023-04-07 | 广东泰坦智能动力有限公司 | 一种基于can通信的可重构化多线程并行上位机系统 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771382A (en) * | 1995-06-05 | 1998-06-23 | International Business Machines Corporation | System and method for synchronizing static variable initialization and reference under a multi-threaded computer environment |
CN1423456A (zh) * | 2001-12-03 | 2003-06-11 | 深圳市中兴通讯股份有限公司上海第二研究所 | 共享线程实现和调度方法 |
CN1801099A (zh) * | 1999-12-09 | 2006-07-12 | 英特尔公司 | 进入和退出多线程处理器中多线程的方法和装置 |
CN101183317A (zh) * | 2006-11-14 | 2008-05-21 | 中兴通讯股份有限公司 | 实时中断与多个进程状态同步的方法 |
CN102622271A (zh) * | 2003-12-31 | 2012-08-01 | 英特尔公司 | 用于多线程处理的使用信号量的方法和设备 |
CN103257639A (zh) * | 2013-04-21 | 2013-08-21 | 中国矿业大学(北京) | 按键控制模式下的多线程数据采集系统同步控制方法 |
CN103793249A (zh) * | 2014-01-24 | 2014-05-14 | 北京航空航天大学 | 一种Java虚拟机中类库的多线程预加载方法 |
KR20150087743A (ko) * | 2014-01-22 | 2015-07-30 | 주식회사 인프라웨어 | 멀티 쓰레딩 프로세서에서의 메모리 동기화 제어 방법 및 장치 |
CN106371899A (zh) * | 2015-07-22 | 2017-02-01 | 无锡天脉聚源传媒科技有限公司 | 一种线程参数的处理方法及装置 |
CN106502773A (zh) * | 2016-10-09 | 2017-03-15 | 武汉斗鱼网络科技有限公司 | 具有同步回调信息功能的数据异步处理方法及模块 |
CN106980544A (zh) * | 2017-03-31 | 2017-07-25 | 北京奇艺世纪科技有限公司 | 一种线程同步方法及线程同步系统 |
-
2017
- 2017-07-13 CN CN201710568634.0A patent/CN109254834B/zh not_active Expired - Fee Related
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771382A (en) * | 1995-06-05 | 1998-06-23 | International Business Machines Corporation | System and method for synchronizing static variable initialization and reference under a multi-threaded computer environment |
CN1801099A (zh) * | 1999-12-09 | 2006-07-12 | 英特尔公司 | 进入和退出多线程处理器中多线程的方法和装置 |
CN1423456A (zh) * | 2001-12-03 | 2003-06-11 | 深圳市中兴通讯股份有限公司上海第二研究所 | 共享线程实现和调度方法 |
CN1328877C (zh) * | 2001-12-03 | 2007-07-25 | 中兴通讯股份有限公司 | 共享线程实现和调度方法 |
CN102622271A (zh) * | 2003-12-31 | 2012-08-01 | 英特尔公司 | 用于多线程处理的使用信号量的方法和设备 |
CN101183317A (zh) * | 2006-11-14 | 2008-05-21 | 中兴通讯股份有限公司 | 实时中断与多个进程状态同步的方法 |
CN103257639A (zh) * | 2013-04-21 | 2013-08-21 | 中国矿业大学(北京) | 按键控制模式下的多线程数据采集系统同步控制方法 |
KR20150087743A (ko) * | 2014-01-22 | 2015-07-30 | 주식회사 인프라웨어 | 멀티 쓰레딩 프로세서에서의 메모리 동기화 제어 방법 및 장치 |
CN103793249A (zh) * | 2014-01-24 | 2014-05-14 | 北京航空航天大学 | 一种Java虚拟机中类库的多线程预加载方法 |
CN106371899A (zh) * | 2015-07-22 | 2017-02-01 | 无锡天脉聚源传媒科技有限公司 | 一种线程参数的处理方法及装置 |
CN106502773A (zh) * | 2016-10-09 | 2017-03-15 | 武汉斗鱼网络科技有限公司 | 具有同步回调信息功能的数据异步处理方法及模块 |
CN106980544A (zh) * | 2017-03-31 | 2017-07-25 | 北京奇艺世纪科技有限公司 | 一种线程同步方法及线程同步系统 |
Non-Patent Citations (2)
Title |
---|
Java多线程同步机制研究分析;李娟;《中国科教创新导刊》;20141231;全文 * |
Win32环境下的多线程同步技术的研究;许斌龙等;《计算机技术与发展》;20131231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109254834A (zh) | 2019-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110855536B (zh) | 运行控制方法、装置、家电设备以及存储介质 | |
CN107977302B (zh) | 一种cpu使用率输出方法及装置 | |
JP2008129846A (ja) | データ処理装置、データ処理方法およびプログラム | |
US8161276B2 (en) | Demodulator device and method of operating the same | |
CN107491346A (zh) | 一种应用的任务处理方法、装置及系统 | |
US20170047069A1 (en) | Voice processing method and device | |
US8132171B2 (en) | Method of controlling thread access to a synchronization object | |
US6820263B1 (en) | Methods and system for time management in a shared memory parallel processor computing environment | |
CN109254834B (zh) | 一种多线程启动同步方法 | |
CN108073414B (zh) | 一种基于Jedis的将多线程并发请求合并批量提交并分发结果的实现方法 | |
WO2013152584A1 (zh) | 嵌入式系统喂狗的方法、装置及单板 | |
CN100583047C (zh) | 实时中断与多个进程状态同步的方法 | |
CN113179227A (zh) | 基于队列的at指令控制方法 | |
CN102023899B (zh) | 多线程数据同步方法及装置 | |
CN108984195A (zh) | 一种软件升级方法及装置 | |
CN101976206B (zh) | 一种中断处理方法和装置 | |
CN105930215A (zh) | 一种移动终端的控制方法及控制装置 | |
CN116859874A (zh) | 一种工业逻辑控制任务调度方法 | |
CN103761106A (zh) | 流程的控制方法及流程引擎 | |
JP5345902B2 (ja) | データ送信装置、データ送信方法、及びデータ送信プログラム | |
CN101000561A (zh) | 多机容错系统内核的实现方法 | |
CN106445475A (zh) | 使用lambda表达式实现的基于过程的异步调用模型 | |
WO2020114142A1 (zh) | 应用热补丁监控方法、装置及存储介质 | |
Ravindran et al. | On best-effort real-time assurances for recovering from distributable thread failures in distributed real-time systems | |
CN108804206B (zh) | 同步任务的处理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210514 |