鍍金池/ 問答/Java  網(wǎng)絡(luò)安全/ java攔截器為何在同個(gè)接口只能像隊(duì)列一樣一個(gè)一個(gè)順序訪問的

java攔截器為何在同個(gè)接口只能像隊(duì)列一樣一個(gè)一個(gè)順序訪問的

比如我后臺(tái)寫個(gè)接口,代碼執(zhí)行時(shí)間讓他睡眠5秒,我同時(shí)訪問這個(gè)接口2次,這個(gè)接口的輸出語(yǔ)句會(huì)同時(shí)輸出,然后我加個(gè)攔截器,在訪問倆次這個(gè)接口,這次只會(huì)輸出一次,然后等到5秒后,也就是第一次執(zhí)行完成后,第二次才輸出來,這樣是不是很不合理的?我一直以為是并發(fā)訪問的,為何會(huì)是順序訪問

回答
編輯回答
放開她

如果你是一個(gè)端口接受請(qǐng)求,那么默認(rèn)是TCP的到達(dá)順序解析包,然后交給線程執(zhí)行;
如果你是單線程則自然在高的并發(fā)都是按順序執(zhí)行;
如果是多線程線程池負(fù)責(zé)執(zhí)行,那么順序就會(huì)有一定的影響,但是一般還是以請(qǐng)求順序執(zhí)行。

2018年3月27日 19:03