第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

怎樣解決死鎖的問題

老師有沒有講解死鎖的教程啊,請(qǐng)教學(xué)

正在回答

2 回答

? final NioSocketConnector connector = getConnector();

? ? ? ? connector.getFilterChain().addLast("transportCoder",

? ? ? ? ? ? ? ? new ProtocolCodecFilter(new CustomProtocolCodecFactory(Charset.forName("UTF-8"))));

? ? ? ? connector.getSessionConfig().setReceiveBufferSize(2048);//接收緩沖區(qū)1M

? ? ? ? connector.setConnectTimeoutMillis(ConfigBean.getHeartbeatTimeout()); // 設(shè)置連接超時(shí)

? ? ? ? connector.setHandler(new TcpClientHandler());// 設(shè)置消息處理器

? ? ? ? connector.getFilterChain().addLast("exceutor", new ExecutorFilter());

? ? ? ? //=============添加監(jiān)控,斷線重連============

? ? ? ? connector.setDefaultRemoteAddress(new InetSocketAddress(ConfigBean.getOpenRestyUrl(),ConfigBean.getOpenRestyPort()));

? ? ? ? connector.addListener(new IoListener(){

? ? ? ? ? ? @Override

? ? ? ? ? ? public void sessionDestroyed(IoSession arg)throws Exception{

? ? ? ? ? ? ? ? cfs=null;

? ? ? ? ? ? ? ? for (;;) {

? ? ? ? ? ? ? ? if (isHostConnectable(ConfigBean.getOpenRestyUrl(), ConfigBean.getOpenRestyPort())) {

? ? ? ? ? ? ? ? ? try {

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Thread.sleep(5000);

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ConnectFuture future = connector.connect();

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?future.awaitUninterruptibly();// 等待連接創(chuàng)建完成 這里可能出現(xiàn)死鎖

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?session = future.getSession();

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?if (session.isConnected()) {

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cfs=future;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?logger.info("斷線重連[" + connector.getDefaultRemoteAddress().getHostName() + ":" + connector.getDefaultRemoteAddress().getPort() + "]成功");

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?break;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}

? ? ? ? ? ? ? ? ? ? ? ? ? ?} catch (Exception e) {

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cfs=null;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?logger.error("重連服務(wù)器登錄失敗,5秒再連接一次:" + e.getMessage());

? ? ? ? ? ? ? ? ? ? ? ? ? ?}

? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? });


0 回復(fù) 有任何疑惑可以回復(fù)我~

之前看書有講:1、盡量避免不必要的synchronized關(guān)鍵字。2、可以用其他方法替換synchronized關(guān)鍵字,比如標(biāo)志不可變量。3、保證synchronized代碼塊簡練。個(gè)人表述不太清楚,詳見《Java Network Programming》第四版Deadlock塊部分,謝謝。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

怎樣解決死鎖的問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)