標(biāo)識(shí)與自身是否匹配;以及
[0153]在所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身的線程標(biāo)識(shí)匹配時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
[0154]A4、如Al所述的方法,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí);
[0155]則所述將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū)的步驟,包括:
[0156]將每個(gè)子任務(wù)寫(xiě)入與其對(duì)應(yīng)任務(wù)標(biāo)識(shí)相匹配的線程對(duì)應(yīng)子緩沖區(qū);
[0157]則所述利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述緩沖區(qū)中子任務(wù)的步驟,包括:
[0158]各線程從對(duì)應(yīng)子緩沖區(qū)中讀取子任務(wù)及其對(duì)應(yīng)任務(wù)信息,并依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述子任務(wù)。
[0159]A5、如A3或A4所述的方法,所述子任務(wù)的任務(wù)標(biāo)識(shí)與所述線程匹配包括:所述子任務(wù)的任務(wù)標(biāo)識(shí)對(duì)于多線程數(shù)目的取模結(jié)果等于所述線程的線程標(biāo)識(shí)。
[0160]A6、如權(quán)利要求Al或A2或A3或A4所述的方法,所述將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū)的步驟,包括:
[0161 ] 將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息循環(huán)寫(xiě)入所述緩沖區(qū)。
[0162]A7、如Al或A2或A3或A4所述的方法,所述緩沖區(qū)包括:內(nèi)存緩沖區(qū)和/或持久緩沖區(qū)。
[0163]AS、如A7所述的方法,所述緩沖區(qū)為持久緩沖區(qū),所述持久緩存區(qū)包括單位塊;
[0164]則所述方法還包括:
[0165]將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入所述持久緩存區(qū)中單位塊后,針對(duì)所述單位塊中內(nèi)容生成相應(yīng)的第一校驗(yàn)參數(shù);
[0166]在從所述單位塊中讀取所述子任務(wù)及其對(duì)應(yīng)任務(wù)信息后,針對(duì)所讀取的任務(wù)生成相應(yīng)的第二校驗(yàn)參數(shù);
[0167]判斷所述第二校驗(yàn)參數(shù)與所述第一校驗(yàn)參數(shù)是否一致;
[0168]在所述第二校驗(yàn)參數(shù)與所述第一校驗(yàn)參數(shù)一致時(shí),執(zhí)行所讀取的任務(wù);以及
[0169]在所述第二校驗(yàn)參數(shù)與所述第一校驗(yàn)參數(shù)不一致時(shí),丟棄所讀取的任務(wù)。
[0170]A9、如Al或A2或A3或A4所述的方法,所述任務(wù)信息包括:任務(wù)數(shù)據(jù)幀,其中,所述任務(wù)數(shù)據(jù)幀為子包對(duì)應(yīng)的封裝幀,所述子包為依據(jù)數(shù)據(jù)包分解得到,所述任務(wù)數(shù)據(jù)幀包括:子包在數(shù)據(jù)包中的編號(hào)、子包數(shù)據(jù)和數(shù)據(jù)包結(jié)束標(biāo)識(shí)。
[0171]本發(fā)明還公開(kāi)了 B10、一種任務(wù)執(zhí)行裝置,包括:
[0172]分解模塊,用于將任務(wù)分解為多個(gè)子任務(wù);
[0173]寫(xiě)入模塊,用于將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū);以及
[0174]執(zhí)行模塊,用于利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)任務(wù)信息執(zhí)行所述緩沖區(qū)中子任務(wù)。
[0175]BllJn BlO所述的裝置,所述執(zhí)行模塊,包括:
[0176]第一掃描子模塊,用于在各線程處于空閑狀態(tài)時(shí),掃描所述緩沖區(qū);以及
[0177]第一讀取子模塊,用于在掃描到新的子任務(wù)時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
[0178]B12、如BlO所述的裝置,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí);
[0179]則所述執(zhí)行模塊,包括:
[0180]第二掃描子模塊,用于針對(duì)各線程掃描所述緩沖區(qū);
[0181]判斷子模塊,用于在掃描到新的子任務(wù)時(shí),針對(duì)各線程判斷所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身是否匹配;以及
[0182]第二讀取子模塊,用于在所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身的線程標(biāo)識(shí)匹配時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
[0183]B13、如BlO所述的裝置,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí);
[0184]則所述寫(xiě)入模塊,具體用于將每個(gè)子任務(wù)寫(xiě)入與其對(duì)應(yīng)任務(wù)標(biāo)識(shí)相匹配的線程對(duì)應(yīng)子緩沖區(qū);
[0185]則所述執(zhí)行模塊,包括:
[0186]第三讀取子模塊,用于針對(duì)各線程從對(duì)應(yīng)子緩沖區(qū)中讀取子任務(wù)及其對(duì)應(yīng)任務(wù)信息,并依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述子任務(wù)。
[0187]B14、如B12或B13所述的裝置,所述子任務(wù)的任務(wù)標(biāo)識(shí)與所述線程匹配包括:所述子任務(wù)的任務(wù)標(biāo)識(shí)對(duì)于多線程數(shù)目的取模結(jié)果等于所述線程的線程標(biāo)識(shí)。
[0188]B15、如BlO或Bll或B12或B13所述的裝置,所述寫(xiě)入模塊,包括:
[0189]循環(huán)寫(xiě)入子模塊,用于將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息循環(huán)寫(xiě)入所述緩沖區(qū)。
[0190]B16、如BlO或Bll或B12或B13所述的裝置,所述緩沖區(qū)包括:內(nèi)存緩沖區(qū)和/或持久緩沖區(qū)。
[0191]B17、如B16所述的裝置,所述緩沖區(qū)為持久緩沖區(qū),所述持久緩存區(qū)包括單位塊;
[0192]則所述裝置還包括:
[0193]第一生成模塊,用于將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入所述持久緩存區(qū)中單位塊后,針對(duì)所述單位塊中內(nèi)容生成相應(yīng)的第一校驗(yàn)參數(shù);
[0194]第二生成模塊,用于在從所述單位塊中讀取所述子任務(wù)及其對(duì)應(yīng)任務(wù)信息后,針對(duì)所讀取的任務(wù)生成相應(yīng)的第二校驗(yàn)參數(shù);
[0195]判斷模塊,用于判斷所述第二校驗(yàn)參數(shù)與所述第一校驗(yàn)參數(shù)是否一致;
[0196]第一執(zhí)行模塊,用于在所述第二校驗(yàn)參數(shù)與所述第一校驗(yàn)參數(shù)一致時(shí),執(zhí)行所讀取的任務(wù);以及
[0197]丟棄模塊,用于在所述第二校驗(yàn)參數(shù)與所述第一校驗(yàn)參數(shù)不一致時(shí),丟棄所讀取的任務(wù)。
[0198]B18、如BlO或Bll或B12或B13所述的裝置,所述任務(wù)信息包括:任務(wù)數(shù)據(jù)幀,其中,所述任務(wù)數(shù)據(jù)幀為子包對(duì)應(yīng)的封裝幀,所述子包為依據(jù)數(shù)據(jù)包分解得到,所述任務(wù)數(shù)據(jù)幀包括:子包在數(shù)據(jù)包中的編號(hào)、子包數(shù)據(jù)和數(shù)據(jù)包結(jié)束標(biāo)識(shí)。
【主權(quán)項(xiàng)】
1.一種任務(wù)執(zhí)行方法,包括: 將任務(wù)分解為多個(gè)子任務(wù); 將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū);以及 利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)任務(wù)信息執(zhí)行所述緩沖區(qū)中子任務(wù)。
2.如權(quán)利要求1所述的方法,其特征在于,所述利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述緩沖區(qū)中子任務(wù)的步驟,包括: 各線程在處于空閑狀態(tài)時(shí),掃描所述緩沖區(qū);以及 在掃描到新的子任務(wù)時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
3.如權(quán)利要求1所述的方法,其特征在于,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí); 則所述利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述緩沖區(qū)中子任務(wù)的步驟,包括: 各線程掃描所述緩沖區(qū); 在掃描到新的子任務(wù)時(shí),各線程判斷所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身是否匹配;以及 在所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身的線程標(biāo)識(shí)匹配時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
4.如權(quán)利要求1所述的方法,其特征在于,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí); 則所述將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū)的步驟,包括: 將每個(gè)子任務(wù)寫(xiě)入與其對(duì)應(yīng)任務(wù)標(biāo)識(shí)相匹配的線程對(duì)應(yīng)子緩沖區(qū); 則所述利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述緩沖區(qū)中子任務(wù)的步驟,包括:各線程從對(duì)應(yīng)子緩沖區(qū)中讀取子任務(wù)及其對(duì)應(yīng)任務(wù)信息,并依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述子任務(wù)。
5.如權(quán)利要求3或4所述的方法,其特征在于,所述子任務(wù)的任務(wù)標(biāo)識(shí)與所述線程匹配包括:所述子任務(wù)的任務(wù)標(biāo)識(shí)對(duì)于多線程數(shù)目的取模結(jié)果等于所述線程的線程標(biāo)識(shí)。
6.一種任務(wù)執(zhí)行裝置,包括: 分解模塊,用于將任務(wù)分解為多個(gè)子任務(wù); 寫(xiě)入模塊,用于將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū);以及 執(zhí)行模塊,用于利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)任務(wù)信息執(zhí)行所述緩沖區(qū)中子任務(wù)。
7.如權(quán)利要求6所述的裝置,其特征在于,所述執(zhí)行模塊,包括: 第一掃描子模塊,用于在各線程處于空閑狀態(tài)時(shí),掃描所述緩沖區(qū);以及第一讀取子模塊,用于在掃描到新的子任務(wù)時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
8.如權(quán)利要求6所述的裝置,其特征在于,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí); 則所述執(zhí)行模塊,包括: 第二掃描子模塊,用于針對(duì)各線程掃描所述緩沖區(qū); 判斷子模塊,用于在掃描到新的子任務(wù)時(shí),針對(duì)各線程判斷所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身是否匹配;以及 第二讀取子模塊,用于在所述新的子任務(wù)的任務(wù)標(biāo)識(shí)與自身的線程標(biāo)識(shí)匹配時(shí),從所述緩沖區(qū)中讀取并執(zhí)行所述新的子任務(wù)。
9.如權(quán)利要求6所述的裝置,其特征在于,所述任務(wù)信息包括:任務(wù)標(biāo)識(shí); 則所述寫(xiě)入模塊,具體用于將每個(gè)子任務(wù)寫(xiě)入與其對(duì)應(yīng)任務(wù)標(biāo)識(shí)相匹配的線程對(duì)應(yīng)子緩沖區(qū); 則所述執(zhí)行模塊,包括: 第三讀取子模塊,用于針對(duì)各線程從對(duì)應(yīng)子緩沖區(qū)中讀取子任務(wù)及其對(duì)應(yīng)任務(wù)信息,并依據(jù)所述子任務(wù)對(duì)應(yīng)數(shù)據(jù)執(zhí)行所述子任務(wù)。
10.如權(quán)利要求8或9所述的裝置,其特征在于,所述子任務(wù)的任務(wù)標(biāo)識(shí)與所述線程匹配包括:所述子任務(wù)的任務(wù)標(biāo)識(shí)對(duì)于多線程數(shù)目的取模結(jié)果等于所述線程的線程標(biāo)識(shí)。
【專利摘要】本發(fā)明實(shí)施例提供了一種任務(wù)執(zhí)行方法和裝置,其中的方法具體包括:將任務(wù)分解為多個(gè)子任務(wù);將所述多個(gè)子任務(wù)及其對(duì)應(yīng)任務(wù)信息寫(xiě)入緩沖區(qū);以及利用多線程依據(jù)所述子任務(wù)對(duì)應(yīng)任務(wù)信息執(zhí)行所述緩沖區(qū)中子任務(wù)。本發(fā)明實(shí)施例的多線程可以并行執(zhí)行子任務(wù)對(duì)應(yīng)的操作,因此,能夠大大提升執(zhí)行任務(wù)執(zhí)行的效率。
【IPC分類(lèi)】G06F9-46
【公開(kāi)號(hào)】CN104572262
【申請(qǐng)?zhí)枴緾N201410832194
【發(fā)明人】陳宗志, 王超, 陳營(yíng), 李明昊, 宋昭
【申請(qǐng)人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司
【公開(kāi)日】2015年4月29日
【申請(qǐng)日】2014年12月27日