java nio基本應用示例。本站提示廣大學習愛好者:(java nio基本應用示例)文章只能為提供參考,不一定能成為您想要的結果。以下是java nio基本應用示例正文
本文實例講述了Python簡略完成子網掩碼轉換的辦法。分享給年夜家供年夜家參考,詳細以下:
這裡完成將子網掩碼長度轉換為詳細的子網掩碼地址:
def exchange_maskint(mask_int): bin_arr = ['0' for i in range(32)] for i in range(mask_int): bin_arr[i] = '1' tmpmask = [''.join(bin_arr[i * 8:i * 8 + 8]) for i in range(4)] tmpmask = [str(int(tmpstr, 2)) for tmpstr in tmpmask] return '.'.join(tmpmask) if __name__ == '__main__': print exchange_maskint(24)
願望本文所述對年夜家Python法式設計有所贊助。
�冊事宜到selector,當事宜知足前提後觸刊行為。
// 1.創立一個selector對象
Selector selector = Selector.open();
// 2.樹立channel對象,並綁定在8080端口上
ServerSocketChannel ssc = ServerSocketChannel.open();
InetSocketAddress address = new InetSocketAddress(InetAddress.getLocalHost(),8080);
ssc.socket().bind(address);
// 3.將channel設定為非壅塞方法
ssc.configureBlocking(false);
// 向selector注冊channel和我們感興致的事宜
SelectionKey skey = ssc.register(selector,SelectionKey.OP_ACCEPT);// 這邊注冊了accept,辦事器接收到client銜接事宜
// 4、簡略模仿下輪詢進程
while(true)
{
// selector經由過程select辦法,告訴我們感興致的事宜產生了
int nKeys = selector.select();
// 當nKeys>0表現事宜產生了
// 這時候候可以經由過程selector.selectedKeys();辦法拿到key聚集
Set selectKeys = selector.selectedKeys();
// 5、迭代遍歷keys對象,分離做適配營業邏輯處置
// 好比:
s = (SelectionKey)(selectKeys.iterator()).next();
if(s.isAcceptable())// 斷定為注冊的OP_ACCEPT事宜
{
// 從channel中獲得我們適才注冊的channel
Socket socket = ((ServerSocketChannel)s.channel()).accept().socket();
SocketChannel sc = socket.getChannel();
// 設置為非壅塞
sc.configureBlocking(false);
// 注冊read/write事宜
sc.register(selector, SelectionKey.OP_READ |SelectionKey.OP_WRITE);
}
}
// 上邊就是簡略的java nio演示的偽代碼
// 這時候候,client端可以telnet 主機名 端標語 銜接到server辦事器。