欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

JackServer端口動(dòng)態(tài)匹配的方法和裝置與流程

文檔序號:12863547閱讀:308來源:國知局
Jack Server端口動(dòng)態(tài)匹配的方法和裝置與流程

本發(fā)明涉及軟件編譯技術(shù),尤其涉及一種jackserver端口動(dòng)態(tài)匹配的方法和裝置。



背景技術(shù):

優(yōu)般圖(ubuntu)是一種linux操作系統(tǒng),也稱為友幫拓或?yàn)醢鄨D,因其開源特性被廣泛使用。例如,安卓(android)系統(tǒng)手機(jī)也使用ubuntu進(jìn)行程序開發(fā)。

目前,有多個(gè)軟件工程師可能會(huì)同時(shí)在一個(gè)ubuntu服務(wù)器進(jìn)行程序開發(fā),因而需要在ubuntu服務(wù)器上創(chuàng)建多個(gè)用戶。每個(gè)用戶在程序開發(fā)的過程中都會(huì)進(jìn)行程序編譯,例如android7.0以后的版本的android編譯程序需要使用jackserver進(jìn)行程序編譯,而jackserver默認(rèn)一個(gè)端口只能一個(gè)用戶使用。當(dāng)多個(gè)用戶中任意兩個(gè)用戶同時(shí)使用同一個(gè)jackserver端口時(shí),系統(tǒng)會(huì)強(qiáng)制停止在先編譯的用戶的jackservice服務(wù)。

為了解決多個(gè)用戶之間jackserver端口的沖突問題,提出了固定分配用戶的jackserver服務(wù)端口的方法。但是,固定分配的jackserver服務(wù)端口可能會(huì)與系統(tǒng)其他服務(wù)端口發(fā)生沖突,從而迫使用戶終止程序的編譯,影響用戶程序開發(fā)的效率。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提供一種jackserver端口動(dòng)態(tài)匹配的方法和裝置,以實(shí)現(xiàn)多用戶模式下jackserver端口的沖突問題。

本發(fā)明實(shí)施例提供一種jackserver端口動(dòng)態(tài)匹配的方法,包括:

執(zhí)行編譯android項(xiàng)目的啟動(dòng)編譯指令;

判斷jackserver的默認(rèn)端口是否被占用;

若所述默認(rèn)端口未被占用,則使用所述默認(rèn)端口啟動(dòng)jackserver服務(wù);

若所述默認(rèn)端口被占用,則從服務(wù)器的jackserver端口中搜尋空閑端口;

使用所述空閑端口啟動(dòng)jackserver服務(wù)。

可選地,所述判斷jackserver的默認(rèn)端口是否被占用,包括:

執(zhí)行java源碼編譯指令,所述java源碼中包括:判斷jackserver的默認(rèn)端口是否被占用的指令;

根據(jù)執(zhí)行結(jié)果確定jackserver的默認(rèn)端口是否被占用。

可選地,所述jackserver的默認(rèn)端口包括:默認(rèn)服務(wù)端口和默認(rèn)管理端口;

所述空閑端口包括:空閑服務(wù)端口和空閑管理端口。

可選地,所述從服務(wù)器的jackserver端口中搜尋空閑端口,包括:

確定jackserver的默認(rèn)服務(wù)端口的端口號;

判斷服務(wù)器中jackserver端口中端口號為i的服務(wù)端口是否被占用,其中i的取值范圍為:大于所述默認(rèn)服務(wù)端口的端口號且小于等于預(yù)設(shè)的上限服務(wù)端口號;

若端口號為i的服務(wù)端口未被占用,則確定所述端口號為i的服務(wù)端口為空閑服務(wù)端口;

根據(jù)所述空閑服務(wù)端口確定與該空閑服務(wù)端口對應(yīng)的空閑管理端口。

可選地,所述從服務(wù)器的jackserver端口中搜尋空閑端口,包括:

步驟a1:獲取jackserver的默認(rèn)服務(wù)端口的端口號,記為n;

步驟a2:令n加1;

步驟a3:判斷n的值是否小于等于m,若n的值小于等于m,則執(zhí)行步驟a4;若n的值大于m,則返回執(zhí)行步驟a1;其中m為服務(wù)器中jackserver端口的服務(wù)端口的端口號的預(yù)設(shè)上限值;

步驟a4:判斷端口號為n的服務(wù)端口是否被占用;若端口號為n的服務(wù)端口被占用,則返回執(zhí)行步驟a2;若端口號為n的服務(wù)端口未被占用,則執(zhí)行步驟a5;

步驟a5:確定端口號為n的服務(wù)端口和該服務(wù)端口相對應(yīng)的管理端口為所述空閑端口。

本發(fā)明實(shí)施例提供一種jackserver端口動(dòng)態(tài)匹配的裝置,包括:

執(zhí)行模塊,用于執(zhí)行編譯android項(xiàng)目的啟動(dòng)編譯指令;

判斷模塊,用于判斷jackserver的默認(rèn)端口是否被占用;

啟動(dòng)模塊,用于在所述默認(rèn)端口未被占用時(shí),使用所述默認(rèn)端口啟動(dòng)jackserver服務(wù);

搜尋模塊,用于在所述默認(rèn)端口被占用時(shí),從服務(wù)器的jackserver端口中搜尋空閑端口;

啟動(dòng)模塊,還用于使用所述空閑端口啟動(dòng)jackserver服務(wù)。

可選地,所述判斷模塊,具體用于:

執(zhí)行java源碼編譯指令,所述java源碼中包括:判斷jackserver的默認(rèn)端口是否被占用的指令;

根據(jù)執(zhí)行結(jié)果確定jackserver的默認(rèn)端口是否被占用。

可選地,所述jackserver的默認(rèn)端口包括:默認(rèn)服務(wù)端口和默認(rèn)管理端口;

所述空閑端口包括:空閑服務(wù)端口和空閑管理端口。

可選地,所述搜尋模塊,具體用于:

確定jackserver的默認(rèn)服務(wù)端口的端口號;

判斷服務(wù)器中jackserver端口中端口號為i的服務(wù)端口是否被占用,其中i的取值范圍為:大于所述默認(rèn)服務(wù)端口的端口號且小于等于預(yù)設(shè)的上限服務(wù)端口號;

若端口號為i的服務(wù)端口未被占用,則確定所述端口號為i的服務(wù)端口為空閑服務(wù)端口;

根據(jù)所述空閑服務(wù)端口確定與該空閑服務(wù)端口對應(yīng)的空閑管理端口。

可選地,所述搜尋模塊,具體用于:

步驟a1:獲取jackserver的默認(rèn)服務(wù)端口的端口號,記為n;

步驟a2:令n加1;

步驟a3:判斷n的值是否小于等于m,若n的值小于等于m,則執(zhí)行步驟a4;若n的值大于m,則返回執(zhí)行步驟a1;其中m為服務(wù)器中jackserver端口的服務(wù)端口的端口號的預(yù)設(shè)上限值;

步驟a4:判斷端口號為n的服務(wù)端口是否被占用;若端口號為n的服務(wù)端口被占用,則返回執(zhí)行步驟a2;若端口號為n的服務(wù)端口未被占用,則執(zhí)行步驟a5;

步驟a5:確定端口號為n的服務(wù)端口和該服務(wù)端口相對應(yīng)的管理端口為所述空閑端口。

本發(fā)明提供的jackserver端口動(dòng)態(tài)匹配的方法和裝置,通過在啟動(dòng)jackserver服務(wù)之前判斷jackserver的默認(rèn)端口是否被占用,當(dāng)該默認(rèn)端口被占用時(shí),通過搜尋服務(wù)器中jackserver端口中的空閑端口,通過該空閑端口啟動(dòng)jackserver服務(wù)。從而解決了多用戶模式下jackserver端口的沖突問題,使得多個(gè)用戶在同一服務(wù)器下能夠自動(dòng)搜尋到空閑的jackserver端口進(jìn)行程序編譯,提高了開發(fā)效率。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明實(shí)施例一提供的jackserver端口動(dòng)態(tài)匹配的方法的流程圖;

圖2為本發(fā)明實(shí)施例二提供的jackserver端口動(dòng)態(tài)匹配的方法的流程圖;

圖3為本發(fā)明實(shí)施例一提供的jackserver端口動(dòng)態(tài)匹配的裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

圖1為本發(fā)明實(shí)施例一提供的jackserver端口動(dòng)態(tài)匹配的方法的流程圖,如圖1所示,本實(shí)施例的方法可以包括:

s101、執(zhí)行編譯android項(xiàng)目的啟動(dòng)編譯指令。

本實(shí)施例中,執(zhí)行編譯android項(xiàng)目的啟動(dòng)編譯指令,具體為:運(yùn)行源碼,android項(xiàng)目的源碼中以字符串make、mm或mmm開頭的指令即為編譯指令,例如:make-j10;mmsettings-j10;mmmpackages/apps/settings-j10;makesystemimage-j10等指令。

s102、判斷jackserver的默認(rèn)端口是否被占用。

本實(shí)施例中,在服務(wù)器中,會(huì)存在多個(gè)用戶,用戶在每執(zhí)行一次java源碼編譯時(shí)均需要調(diào)動(dòng)服務(wù)器的jackserver端口,這會(huì)導(dǎo)致用戶調(diào)用jackserver端口沖突的問題。因此,在調(diào)用jackserver端口之前,需要判斷jackserver的默認(rèn)端口是否被占用。若默認(rèn)端口未被占用則執(zhí)行步驟s103;若默認(rèn)端口被占用,則執(zhí)行步驟s104。

可選地,判斷jackserver的默認(rèn)端口是否被占用,具體為:執(zhí)行java源碼編譯指令,java源碼中包括:判斷jackserver的默認(rèn)端口是否被占用的指令;根據(jù)執(zhí)行結(jié)果確定jackserver的默認(rèn)端口是否被占用。其中,jackserver的默認(rèn)端口包括:默認(rèn)服務(wù)端口和默認(rèn)管理端口。

s103、使用默認(rèn)端口啟動(dòng)jackserver服務(wù)。

本實(shí)施例中,當(dāng)確定jackserver的默認(rèn)端口未被占用時(shí),通過默認(rèn)端口啟動(dòng)jackserver服務(wù),完成對android項(xiàng)目的一次編譯。

s104、從服務(wù)器的jackserver端口中搜尋空閑端口。

本實(shí)施例中,一個(gè)服務(wù)器上可以設(shè)置多個(gè)jackserver端口(具體設(shè)置的jackserver端口數(shù)由服務(wù)器的硬件配置決定)。當(dāng)jackserver的默認(rèn)端口被占用時(shí),為了避免端口沖突,需要從除默認(rèn)端口以外的jackserver端口中搜尋空閑端口。其中,空閑端口包括:空閑服務(wù)端口和空閑管理端口。

可選地,可以在除默認(rèn)端口以外的jackserver端口中隨機(jī)選取一個(gè)jackserver端口進(jìn)行判斷,判斷該jackserver端口是否被占用。

可選地,也可以按照一定的順序從jackserver的端口中確定空閑端口,例如:首先,確定jackserver的默認(rèn)服務(wù)端口的端口號,然后判斷服務(wù)器中jackserver端口中端口號為i的服務(wù)端口是否被占用,其中,i的取值范圍為:大于默認(rèn)服務(wù)端口的端口號且小于等于預(yù)設(shè)的上限服務(wù)端口號;若端口號為i的服務(wù)端口未被占用,則確定端口號為i的服務(wù)端口為空閑服務(wù)端口;根據(jù)空閑服務(wù)端口確定與該空閑服務(wù)端口對應(yīng)的空閑管理端口。

s105、使用空閑端口啟動(dòng)jackserver服務(wù)。

本實(shí)施例中,通過搜尋到的空閑端口啟動(dòng)jackserver服務(wù),需要說明的是,當(dāng)jackserver端口中的服務(wù)端口被確定后,與該服務(wù)端口相匹配的管理端口也被確定。從而可以調(diào)用該服務(wù)端口和該管理端口啟動(dòng)jackserver服務(wù)。

可選地,jackserver端口中的服務(wù)端口與管理端口為關(guān)聯(lián)關(guān)系,即其中任意一個(gè)確定則另一個(gè)也可以確定時(shí),也可以通過上述類似的方法,先搜尋管理端口的端口號,確定空閑管理端口,通過該空閑管理端口來確定空閑服務(wù)端口。

本實(shí)施例,通過在啟動(dòng)jackserver服務(wù)之前判斷jackserver的默認(rèn)端口是否被占用,當(dāng)該默認(rèn)端口被占用時(shí),通過搜尋服務(wù)器中jackserver端口中的空閑端口,通過該空閑端口啟動(dòng)jackserver服務(wù)。從而解決了多用戶模式下jackserver端口的沖突問題,使得多個(gè)用戶在同一服務(wù)器下能夠自動(dòng)搜尋到空閑的jackserver端口進(jìn)行程序編譯,提高了開發(fā)效率。

圖2為本發(fā)明實(shí)施例二提供的jackserver端口動(dòng)態(tài)匹配的方法的流程圖,如圖2所示的方法在圖1所示方法的基礎(chǔ)上可以包括:

s201、執(zhí)行編譯android項(xiàng)目的啟動(dòng)編譯指令。

s202、判斷jackserver的默認(rèn)端口是否被占用;若默認(rèn)端口未被占用則執(zhí)行步驟s203;若默認(rèn)端口被占用,則執(zhí)行步驟s204。

s203、使用默認(rèn)端口啟動(dòng)jackserver服務(wù)。

本實(shí)施例中步驟s201-s203的具體是實(shí)現(xiàn)過程參見圖1所示方法中的相關(guān)描述,此處不再贅述。

s204、確定jackserver的默認(rèn)服務(wù)端口的端口號,記為n。

本實(shí)施例中,首先標(biāo)記jackserver的默認(rèn)服務(wù)端口的端口號為n,用于確定初始搜尋的端口號,例如本實(shí)施例中采用默認(rèn)服務(wù)端口的端口號加1時(shí)的端口號為初始搜尋的端口。

s205、令n加1。

本實(shí)施例中,通過對n的加1操作,依次逐個(gè)搜尋判斷服務(wù)端口是否為空閑端口。例如:假設(shè)默認(rèn)服務(wù)端口的端口號為8072,則從端口號為8073的端口進(jìn)行判斷,判斷端口號為8073的服務(wù)端口是否為空閑端口。

s206、判斷n的值是否小于等于m。

其中m為服務(wù)器中jackserver端口的服務(wù)端口的端口號的預(yù)設(shè)上限值,若n的值小于等于m,則執(zhí)行步驟s207;若n的值大于m,則返回執(zhí)行步驟s204。

本實(shí)施例中,確定端口號的上限值m,理論上服務(wù)器的端口數(shù)量是有限的,當(dāng)搜尋的端口號小于等于m時(shí),可以繼續(xù)令n的值加1,判斷加1后的n所對應(yīng)的服務(wù)端口是否為空閑服務(wù)端口。當(dāng)n的值等于m時(shí),判斷端口號為m的服務(wù)端口是否被占用。

s207、判斷端口號為n的服務(wù)端口是否被占用,若端口號為n的服務(wù)端口被占用,則返回執(zhí)行步驟s205;若端口號為n的服務(wù)端口未被占用,則執(zhí)行步驟s208。

本實(shí)施例中,可以執(zhí)行java源碼編譯指令,java源碼中包括:判斷端口號為n所對應(yīng)的服務(wù)端口是否被占用的指令;根據(jù)執(zhí)行結(jié)果確定該服務(wù)端口是否被占用。

s208、確定端口號為n的服務(wù)端口和該服務(wù)端口相對應(yīng)的管理端口為空閑端口。

s209、使用空閑端口啟動(dòng)jackserver服務(wù)。

本實(shí)施例中步驟s208-s209的具體是實(shí)現(xiàn)過程參見圖1所示方法中的相關(guān)描述,此處不再贅述。

本實(shí)施例,通過在啟動(dòng)jackserver服務(wù)之前判斷jackserver的默認(rèn)端口是否被占用,當(dāng)該默認(rèn)端口被占用時(shí),通過從默認(rèn)端口的端口自增1所對應(yīng)的服務(wù)端口開始搜尋服務(wù)器中jackserver端口中的空閑端口,通過該空閑端口啟動(dòng)jackserver服務(wù)。從而解決了多用戶模式下jackserver端口的沖突問題,使得多個(gè)用戶在同一服務(wù)器下能夠自動(dòng)搜尋到空閑的jackserver端口進(jìn)行程序編譯,提高了開發(fā)效率。

圖3為本發(fā)明實(shí)施例一提供的jackserver端口動(dòng)態(tài)匹配的裝置的結(jié)構(gòu)示意圖,本實(shí)施例中的裝置可以包括:執(zhí)行模塊10,用于執(zhí)行編譯android項(xiàng)目的啟動(dòng)編譯指令;判斷模塊20,用于判斷jackserver的默認(rèn)端口是否被占用;啟動(dòng)模塊,用于在默認(rèn)端口未被占用時(shí),使用默認(rèn)端口啟動(dòng)jackserver服務(wù);搜尋模塊40,用于在默認(rèn)端口被占用時(shí),從服務(wù)器的jackserver端口中搜尋空閑端口;啟動(dòng)模塊30,還用于使用空閑端口啟動(dòng)jackserver服務(wù)。

可選地,判斷模塊20,具體用于:執(zhí)行java源碼編譯指令,java源碼中包括:判斷jackserver的默認(rèn)端口是否被占用的指令;根據(jù)執(zhí)行結(jié)果確定jackserver的默認(rèn)端口是否被占用。

可選地,jackserver的默認(rèn)端口包括:默認(rèn)服務(wù)端口和默認(rèn)管理端口;空閑端口包括:空閑服務(wù)端口和空閑管理端口。

可選地,搜尋模塊40,具體用于:確定jackserver的默認(rèn)服務(wù)端口的端口號;判斷服務(wù)器中jackserver端口中端口號為i的服務(wù)端口是否被占用,其中i的取值范圍為:大于默認(rèn)服務(wù)端口的端口號且小于等于預(yù)設(shè)的上限服務(wù)端口號。若端口號為i的服務(wù)端口未被占用,則確定端口號為i的服務(wù)端口為空閑服務(wù)端口。根據(jù)空閑服務(wù)端口確定與該空閑服務(wù)端口對應(yīng)的空閑管理端口。

可選地,搜尋模塊40,具體用于執(zhí)行如下步驟:

步驟a1:獲取jackserver的默認(rèn)服務(wù)端口的端口號,記為n。

步驟a2:令n加1。

步驟a3:判斷n的值是否小于等于m,若n的值小于等于m,則執(zhí)行步驟a4;若n的值大于m,則返回執(zhí)行步驟a1;其中m為服務(wù)器中jackserver端口的服務(wù)端口的端口號的預(yù)設(shè)上限值。

步驟a4:判斷端口號為n的服務(wù)端口是否被占用;若端口號為n的服務(wù)端口被占用,則返回執(zhí)行步驟a2;若端口號為n的服務(wù)端口未被占用,則執(zhí)行步驟a5。

步驟a5:確定端口號為n的服務(wù)端口和該服務(wù)端口相對應(yīng)的管理端口為空閑端口。

本實(shí)施中的裝置可以執(zhí)行圖1、圖2所示的方法,其實(shí)現(xiàn)過程和技術(shù)效果類似,此處不再贅述。

此外,本申請實(shí)施例還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)執(zhí)行指令,當(dāng)用戶設(shè)備的至少一個(gè)處理器執(zhí)行該計(jì)算機(jī)執(zhí)行指令時(shí),用戶設(shè)備執(zhí)行上述各種可能的方法。

其中,計(jì)算機(jī)可讀介質(zhì)包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì),其中通信介質(zhì)包括便于從一個(gè)地方向另一個(gè)地方傳送計(jì)算機(jī)程序的任何介質(zhì)。存儲(chǔ)介質(zhì)可以是通用或?qū)S糜?jì)算機(jī)能夠存取的任何可用介質(zhì)。一種示例性的存儲(chǔ)介質(zhì)耦合至處理器,從而使處理器能夠從該存儲(chǔ)介質(zhì)讀取信息,且可向該存儲(chǔ)介質(zhì)寫入信息。當(dāng)然,存儲(chǔ)介質(zhì)也可以是處理器的組成部分。處理器和存儲(chǔ)介質(zhì)可以位于asic中。另外,該asic可以位于用戶設(shè)備中。當(dāng)然,處理器和存儲(chǔ)介質(zhì)也可以作為分立組件存在于通信設(shè)備中。

本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。

最后應(yīng)說明的是:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
元朗区| 枣强县| 光山县| 镇安县| 广汉市| 阳城县| 扎兰屯市| 安仁县| 新乡市| 铁岭市| 吉隆县| 洪雅县| 大姚县| 泉州市| 内黄县| 龙江县| 正镶白旗| 原阳县| 蒙自县| 深州市| 青冈县| 资源县| 冷水江市| 博白县| 辽阳县| 德州市| 禹城市| 滨州市| 仲巴县| 清涧县| 淮北市| 达州市| 鹿泉市| 邹平县| 盐亭县| 揭东县| 巴彦淖尔市| 桂阳县| 武安市| 湟源县| 太谷县|