亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于帶抑止弧Petri網(wǎng)的C#多線程程序分析

        2011-05-11 07:17:32陳麗特
        關(guān)鍵詞:庫(kù)所線程錯(cuò)誤

        陳麗特

        (安徽理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,安徽 淮南 232001)

        引言。在單個(gè)程序里面同時(shí)運(yùn)行多個(gè)線程來(lái)完成不同任務(wù),稱為多線程。多線程主要目的是為了節(jié)約CPU時(shí)間,提高CUP的利用率。但多線程會(huì)給程序帶來(lái)更多難以發(fā)現(xiàn)的bug。Petri是一種功能強(qiáng)大的分布式系統(tǒng)的建模分析工具。在描述、模擬、分析系統(tǒng)的順序、沖突、并發(fā)和同步等關(guān)系上有著其他模擬分析工具難以比擬的優(yōu)勢(shì)。

        1 帶抑止弧Petri的概念。定義:一個(gè)五元組Σ=(S,T,F,I,M)組成一個(gè)帶抑止弧的Petri網(wǎng),(S,T,F)代表一個(gè)網(wǎng),其中M表示一個(gè)網(wǎng)的標(biāo)識(shí),I。

        2 應(yīng)用實(shí)例。"生產(chǎn)者/消費(fèi)者"問(wèn)題是線程同步控制的非常典型的例子,本文的程序中Producer線程負(fù)責(zé)生產(chǎn)商品,Consumer線程負(fù)責(zé)在有商品的時(shí)候消費(fèi)商品。PandC類的對(duì)象是生產(chǎn)商品線程和消費(fèi)商品線程共同訪問(wèn)的商品數(shù)據(jù)。

        程序如下:

        這個(gè)程序沒(méi)有對(duì)線程進(jìn)行同步,運(yùn)行程序時(shí)不會(huì)出現(xiàn)問(wèn)題,但是多次運(yùn)行程序后會(huì)陷入死機(jī)程序出現(xiàn)錯(cuò)誤。這個(gè)錯(cuò)誤發(fā)生的幾率很小,錯(cuò)誤的原因也難以查找。但是依據(jù)上文的建模規(guī)則建立這個(gè)程序的Petri網(wǎng)模型,依靠Petri網(wǎng)的理論就能夠分析和定為錯(cuò)誤。該程序的Petri網(wǎng)模型如圖1,當(dāng)庫(kù)所p8,p14,p15,p16同時(shí)都有標(biāo)記時(shí),Petri網(wǎng)中沒(méi)有一個(gè)變遷是可以引發(fā),即表示當(dāng)前狀態(tài)M是一個(gè)死標(biāo)識(shí),end庫(kù)所不獲得標(biāo)記,說(shuō)明程序不能正常結(jié)束。對(duì)應(yīng)的多線程的執(zhí)行過(guò)程是當(dāng)消費(fèi)最后一份可消費(fèi)的商品后要把t.available置為false,但在執(zhí)行t.available=false語(yǔ)句之前,消費(fèi)商品線程被中斷,系統(tǒng)執(zhí)行了商品生產(chǎn)線程,生產(chǎn)若干商品后,生產(chǎn)商品線程結(jié)束,再調(diào)用消費(fèi)商品線程并執(zhí)t.available=false語(yǔ)句,最終導(dǎo)致消費(fèi)商品線程判斷有商品可消費(fèi)但是t.available=false,消費(fèi)商品線程陷入死循環(huán),程序不能正確結(jié)束。

        這個(gè)時(shí)候?qū)е鲁绦虺鲥e(cuò)的原因已經(jīng)找到,只需要對(duì)消費(fèi)商品線程進(jìn)行同步即可,即使得消費(fèi)商品線程在執(zhí)行時(shí)可以獨(dú)占資源。

        圖1 程序的Petri網(wǎng)模型

        3 結(jié)束語(yǔ)

        本文通過(guò)抑止弧Petri網(wǎng)模型的運(yùn)行找到了"生產(chǎn)-消費(fèi)"程序中用普通方法難以發(fā)現(xiàn)的隱藏的錯(cuò)誤。而且通過(guò)引入抑止弧Petri網(wǎng)的行為分析找到了引發(fā)這個(gè)錯(cuò)誤的原因并提出了該進(jìn)的方法。

        [1]吳哲輝.Petri網(wǎng)導(dǎo)論[M].北京:機(jī)械工業(yè)出版社.

        [2]鄭莉.C#語(yǔ)言程序設(shè)計(jì)[M].清華大學(xué)出版社.

        猜你喜歡
        庫(kù)所線程錯(cuò)誤
        在錯(cuò)誤中成長(zhǎng)
        基于FPGA 的有色Petri 網(wǎng)仿真系統(tǒng)設(shè)計(jì)*
        電子器件(2021年1期)2021-03-23 09:24:02
        淺談linux多線程協(xié)作
        不犯同樣錯(cuò)誤
        利用Petri網(wǎng)特征結(jié)構(gòu)的故障診斷方法
        一種遞歸π演算向Petri網(wǎng)的轉(zhuǎn)換方法
        《錯(cuò)誤》:怎一個(gè)“美”字了得
        基于模糊Petri網(wǎng)的數(shù)控機(jī)床主軸故障診斷*
        Linux線程實(shí)現(xiàn)技術(shù)研究
        么移動(dòng)中間件線程池并發(fā)機(jī)制優(yōu)化改進(jìn)
        99久久伊人精品综合观看| 中文字幕熟女激情50路| av手机天堂在线观看| 亚洲美女毛多水多免费视频 | 无码人妻av免费一区二区三区| 午夜亚洲www湿好爽| 国产成人免费一区二区三区| 国产av一区二区凹凸精品| 国产色av一区二区三区| 国产香蕉视频在线播放| 亚洲精品久久久久成人2007 | 久久香蕉国产线看观看网| 亚洲啊啊啊一区二区三区| 亚洲中文字幕综合网站| 日本人妻伦理在线播放| 国产精品成人免费视频一区| 亚洲丁香五月激情综合| 无码一区二区三区在线在看| 玩弄极品少妇被弄到高潮| av一区二区在线网站| 人妻丰满熟妇aⅴ无码| 国产美女精品视频线免费播放软件| 国产麻豆成人精品av| 狠干狠爱无码区| 亚洲视频不卡免费在线| 开心五月骚婷婷综合网| 无码人妻丰满熟妇啪啪网站| 日韩一级特黄毛片在线看| 亚洲美女主播一区二区| 麻婆视频在线免费观看| 国产精品免费看久久久无码| 男同gay毛片免费可播放| 国产a级午夜毛片| 被驯服人妻中文字幕日本| 国产区一区二区三区性色| 久久精品丝袜高跟鞋| 藏春阁福利视频| 日韩在线观看网址| av中文字幕一区人妻| 亚洲看片lutube在线观看| 国产天堂在线观看|