[發(fā)明專利]切換多線程程序中的對(duì)象鎖定模式的方法和系統(tǒng)無(wú)效
| 申請(qǐng)?zhí)枺?/td> | 201210500315.3 | 申請(qǐng)日: | 2012-11-29 |
| 公開(公告)號(hào): | CN103853527A | 公開(公告)日: | 2014-06-11 |
| 發(fā)明(設(shè)計(jì))人: | 韓瑞波;孫彬;劉偉;沙學(xué)府 | 申請(qǐng)(專利權(quán))人: | 國(guó)際商業(yè)機(jī)器公司 |
| 主分類號(hào): | G06F9/38 | 分類號(hào): | G06F9/38 |
| 代理公司: | 北京市柳沈律師事務(wù)所 11105 | 代理人: | 于小寧 |
| 地址: | 美國(guó)紐*** | 國(guó)省代碼: | 美國(guó);US |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 切換 多線程 程序 中的 對(duì)象 鎖定 模式 方法 系統(tǒng) | ||
1.一種切換多線程程序中的對(duì)象的鎖定模式的方法,包括:
在程序運(yùn)行期間,獲取與多個(gè)線程對(duì)該對(duì)象的訪問(wèn)有關(guān)的訪問(wèn)信息,其中,該對(duì)象支持單級(jí)鎖定模式和多級(jí)鎖定模式,單級(jí)鎖定模式是能夠鎖定該對(duì)象的模式,多級(jí)鎖定模式是能夠分別鎖定該對(duì)象以及該對(duì)象中的字段的模式;以及
基于該訪問(wèn)信息,在單級(jí)鎖定模式和多級(jí)鎖定模式之間切換該對(duì)象的鎖定模式。
2.如權(quán)利要求1所述的方法,其中,所述對(duì)象是在多線程程序中預(yù)先標(biāo)注的對(duì)象。
3.如權(quán)利要求1所述的方法,其中,通過(guò)修改所述對(duì)象的代碼來(lái)使得所述對(duì)象支持單級(jí)鎖定模式和多級(jí)鎖定模式。
4.如權(quán)利要求3所述的方法,其中,修改后的對(duì)象的代碼包括:針對(duì)該對(duì)象的鎖的定義和針對(duì)該對(duì)象的字段的鎖的定義;以及用于表示對(duì)象的當(dāng)前鎖定狀態(tài)的鎖定狀態(tài)參數(shù)。
5.如權(quán)利要求4所述的方法,其中,所述訪問(wèn)信息包括所述多個(gè)線程對(duì)于該對(duì)象的總訪問(wèn)次數(shù)、所述多個(gè)線程對(duì)于該對(duì)象的競(jìng)爭(zhēng)訪問(wèn)次數(shù)、以及所述多個(gè)線程的總等待時(shí)間,所述總等待時(shí)間是請(qǐng)求訪問(wèn)該對(duì)象的各個(gè)線程從由于對(duì)象被鎖定而開始等待時(shí)起到獲得該對(duì)象的訪問(wèn)權(quán)為止的等待時(shí)間的總和。
6.如權(quán)利要求5所述的方法,其中,基于該訪問(wèn)信息,在單級(jí)鎖定模式和多級(jí)鎖定模式之間切換該對(duì)象的鎖定模式的步驟包括:
計(jì)算該對(duì)象的競(jìng)爭(zhēng)率和平均等待時(shí)間,所述競(jìng)爭(zhēng)率為競(jìng)爭(zhēng)訪問(wèn)次數(shù)與總訪問(wèn)次數(shù)之比,所述平均等待時(shí)間為總等待時(shí)間與競(jìng)爭(zhēng)訪問(wèn)次數(shù)之比,以及
在對(duì)象處于單級(jí)鎖定模式,并且競(jìng)爭(zhēng)率超過(guò)第一比率閾值且平均等待時(shí)間超過(guò)第一時(shí)間閾值的情況下,將對(duì)象的鎖定模式切換為多級(jí)鎖定模式。
7.如權(quán)利要求6所述的方法,其中,將對(duì)象的鎖定模式切換為多級(jí)鎖定模式的步驟包括:
獲取該對(duì)象的寫訪問(wèn)權(quán);
激活針對(duì)該對(duì)象的字段的鎖;
將所述鎖定狀態(tài)參數(shù)修改為表示多級(jí)鎖定模式的值;以及
釋放該對(duì)象的寫訪問(wèn)權(quán)。
8.如權(quán)利要求5所述的方法,其中,基于該訪問(wèn)信息,在單級(jí)鎖定模式和多級(jí)鎖定模式之間切換該對(duì)象的鎖定模式的步驟還包括:
計(jì)算該對(duì)象的競(jìng)爭(zhēng)率和平均等待時(shí)間,所述競(jìng)爭(zhēng)率為競(jìng)爭(zhēng)訪問(wèn)次數(shù)與總訪問(wèn)次數(shù)之比,所述平均等待時(shí)間為總等待時(shí)間與競(jìng)爭(zhēng)訪問(wèn)次數(shù)之比,以及
在對(duì)象處于多級(jí)鎖定模式的情況下,并且競(jìng)爭(zhēng)率低于第二比率閾值且平均等待時(shí)間低于第二時(shí)間閾值時(shí),將對(duì)象的鎖定模式切換為單級(jí)鎖定模式。
9.如權(quán)利要求8所述的方法,其中,將對(duì)象的鎖定模式切換為單級(jí)鎖定模式的步驟包括:
獲取該對(duì)象的寫訪問(wèn)權(quán);
撤銷針對(duì)該對(duì)象的字段的鎖;
將所述鎖定狀態(tài)參數(shù)修改為表示單級(jí)鎖定模式的值;以及
釋放該對(duì)象的寫訪問(wèn)權(quán)。
10.如權(quán)利要求1所述的方法,其中,周期性地或者響應(yīng)于預(yù)定事件的發(fā)生,而執(zhí)行基于該訪問(wèn)信息在單級(jí)鎖定模式和多級(jí)鎖定模式之間切換該對(duì)象的鎖定模式的步驟。
11.一種切換多線程程序中的對(duì)象的鎖定模式的系統(tǒng),包括:
訪問(wèn)監(jiān)視器,被配置為在程序運(yùn)行期間,獲取與多個(gè)線程對(duì)該對(duì)象的訪問(wèn)有關(guān)的訪問(wèn)信息,其中,所述對(duì)象支持單級(jí)鎖定模式和多級(jí)鎖定模式,單級(jí)鎖定模式是能夠鎖定該對(duì)象的模式,多級(jí)鎖定模式是能夠分別鎖定該對(duì)象以及該對(duì)象中的字段的模式;以及
鎖定模式控制器,被配置為基于該訪問(wèn)信息,在單級(jí)鎖定模式和多級(jí)鎖定模式之間切換該對(duì)象的鎖定模式。
12.如權(quán)利要求11所述的系統(tǒng),其中,所述對(duì)象是在多線程程序中預(yù)先標(biāo)注的對(duì)象。
13.如權(quán)利要求11所述的系統(tǒng),其中,通過(guò)修改所述對(duì)象的代碼來(lái)使得所述對(duì)象支持單級(jí)鎖定模式和多級(jí)鎖定模式。
14.如權(quán)利要求13所述的系統(tǒng),其中,修改后的對(duì)象的代碼包括:針對(duì)該對(duì)象的鎖的定義和針對(duì)該對(duì)象的字段的鎖的定義;以及用于表示對(duì)象的當(dāng)前鎖定狀態(tài)的鎖定狀態(tài)參數(shù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國(guó)際商業(yè)機(jī)器公司,未經(jīng)國(guó)際商業(yè)機(jī)器公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210500315.3/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 多線程應(yīng)用系統(tǒng)的異常處理方法和異常處理裝置
- 一種面向片上網(wǎng)絡(luò)的多線程調(diào)度實(shí)現(xiàn)方法
- 基于計(jì)算機(jī)多線程多核顯微鏡細(xì)胞圖像快速掃描處理方法
- 一種基于同步鎖的多線程處理方法、終端以及存儲(chǔ)介質(zhì)
- 多線程并發(fā)處理系統(tǒng)及方法
- 海外控股估值流程控制方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 讀數(shù)方法、電子裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 一種基于云平臺(tái)多線程調(diào)度的方法、系統(tǒng)、設(shè)備及介質(zhì)
- 一種基于云平臺(tái)的前端多線程調(diào)度方法和系統(tǒng)
- 多線程調(diào)度方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 功能限制程序、安裝程序生成程序和程序存儲(chǔ)介質(zhì)
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序創(chuàng)建裝置,程序創(chuàng)建方法和程序
- 程序生成裝置、程序生產(chǎn)方法及程序
- 程序生成裝置、程序生成程序以及程序生成方法
- 程序生成裝置、程序生成方法及程序生成程序
- 程序開發(fā)支持裝置、程序開發(fā)支持方法以及存儲(chǔ)介質(zhì)
- 程序執(zhí)行輔助裝置、程序執(zhí)行輔助方法及程序執(zhí)行輔助程序
- 程序?qū)φ昭b置、程序?qū)φ辗椒俺绦驅(qū)φ粘绦?/a>





