自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

.Net和Java的Socket機(jī)制比較

開發(fā) 后端
Java的TCP服務(wù)中使用的Socket是一種流機(jī)制,而.Net的Socket則提供了一種統(tǒng)一的收發(fā)機(jī)制:NetworkStream。本文主要對(duì).Net和Java中的Socket機(jī)制進(jìn)行了比較。

Socket是基于TCP和UDP協(xié)議的高層接口,定義了收發(fā)數(shù)據(jù)的格式。Java的TCP服務(wù)中使用的Socket是一種流機(jī)制,即對(duì)于編程人員來(lái)說(shuō),處理socket只需要從Socket中獲取流,然后可以像處理本地流一樣來(lái)進(jìn)行數(shù)據(jù)的收發(fā)。

例如:

DataOutputStream outToClient =new DataOutputStream(socket.getOutputStream());
  BufferedReader inFromClient =new BufferedReader
(new InputStreamReader(socket.getInputStream()));   String requestMessageLine = inFromClient.readLine();   outToClient.writeBytes(requestMessageLine);

.Net的Socket機(jī)制提供了兩種實(shí)現(xiàn):一種是直接用Socket類,一種是使用對(duì)Socket再次封裝的TcpClient,UdpClient類來(lái)實(shí)現(xiàn)。.Net提供了一種統(tǒng)一的收發(fā)機(jī)制:NetworkStream。

TcpClient和Socket的底層都是通過NetworkStream來(lái)傳送數(shù)據(jù)的。它們都可以產(chǎn)生一個(gè)NetworkStream。例如:

TcpClient client = server.AcceptTcpClient();
  NetworkStream stream = client.GetStream();

.Net的socket和Java的socket在收發(fā)數(shù)據(jù)上的***不同是:Java的socket可以像普通的流一樣操作。.Net的socket有多種實(shí)現(xiàn)方法,可以直接用Socket.send()來(lái)發(fā),也可以用NetwordStream來(lái)發(fā)送,也可以用TcpClient來(lái)發(fā)送。但是每種實(shí)現(xiàn)在收發(fā)數(shù)據(jù)的時(shí)候都是通過顯示的對(duì)緩沖區(qū)進(jìn)行操作。例如:

byte[] datasize = new byte[4]; networkStream.Write(datasize,0,4);
  socket.Send(datasize, 0,datasize.Length, 0);

【編輯推薦】

  1. 三步學(xué)會(huì)Java Socket編程
  2. 新一代Java Web開發(fā)框架JSF訪談實(shí)錄
  3. Java 7新特性展望 語(yǔ)言本身的改變會(huì)很少
  4. 針對(duì) Java 開發(fā)人員的 Dojo 概念
責(zé)任編輯:楊鵬飛 來(lái)源: CSDN
相關(guān)推薦

2010-03-19 16:38:29

Java Socket

2009-02-13 09:45:27

程序員JavaPHP

2009-10-29 14:02:24

VB和VB.NET比較

2010-09-07 09:44:44

Lucene.NETHubbleDotNe

2009-09-07 15:04:07

2009-07-30 12:42:19

html控件和web控

2024-04-07 10:07:52

2012-03-19 10:41:15

JavaSocket

2014-03-10 10:06:40

WebSocket.Net

2020-08-19 10:29:08

RubyJava語(yǔ)法

2025-04-18 04:05:00

2011-07-21 13:21:32

PHP

2009-07-28 14:10:14

2010-01-06 16:25:58

.Net Framew

2009-08-28 10:18:48

Java序列化

2009-01-13 10:13:05

Ja.NETJava整合.NET整合

2009-08-11 14:57:11

比較C#和Java

2009-08-11 13:13:09

C#和Java比較

2020-02-20 16:45:39

RabbitMQKafka架構(gòu)

2011-07-19 09:35:46

.Net
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)