亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

client報錯是怎么回事?

http://img1.sycdn.imooc.com//5e72dede0001b82b11180241.jpgserver沒問題,一旦運行client就報錯

正在回答

4 回答

老師的代碼沒有問題,有相同錯誤的自己糾正。查看

private?Response?invokeRemote(Request?request)?{
????Response?resp?=?null;
????TransportClient?client?=?null;
????try?{
????????client?=?selector.select();
????????byte[]?outBytes??=?encoder.encode(request);
????????InputStream?receive?=?client.write(new?ByteArrayInputStream(outBytes));
????????byte[]?inBytes?=?IOUtils.readFully(receive,?receive.available());
????????resp?=?decoder.decode(inBytes,?Response.class);

????}?catch?(IOException?e)?{
????????log.warn(e.getMessage(),?e);
????????resp?=?new?Response();
????????resp.setCode(1);
????????resp.setMessage("RpcClient?got?error:"
????????+?e.getClass()
????????+?":"?+?e.getMessage());

????}?finally?{
????????if(client?!=?null){
????????????selector.release(client);
????????}
????}
????return?resp;
}

這部分代碼是否有誤。祝大家秋招順利~

0 回復 有任何疑惑可以回復我~

看下RemoteInvoke.invoke是否有返回數據,就是在最后一步的時候不要return null;

0 回復 有任何疑惑可以回復我~

因為老師的代碼實現有bug

RandomTransportSelector#select?方法實現錯誤,是取不應該是刪除;

可以直接clone我的代碼,可以直接運行出RPC效果

https://github.com/WuTong111/RPC.git

0 回復 有任何疑惑可以回復我~
#1

慕先生1008176

和這個沒關系吧,remove 只是移除用來傳輸的 HTTPTransportClient 吧
2020-05-11 回復 有任何疑惑可以回復我~
#2

慕少0428329

和remove沒關系,remove的返回值也是這個對象,remove是為了下一次他在選擇連接的時候,不選已經被選過的
2021-08-28 回復 有任何疑惑可以回復我~

解決了嗎? ,同樣這個問題?

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

client報錯是怎么回事?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號