socket接收到消息后执行测试this.transform.name没反应,只有print();打出来的好用。谁知道为什么?(c# Socket BeginR

7715℃ ANNE

socket接收到消息后执行测试this.transform.name没反应,只有print();打出来的好用。谁知道为什么?(c# Socket BeginReceive异步接收不到信息)

c# Socket BeginReceive异步接收不到信息

那就证明没有接收到东西。

因为这个socket通道没有收到过任何数据。

BeginReceive返回只能证明开始异步接收数据,打印了456并不能证明有数据。

socket端口接收问题

嗯是有这个情况.自己发自己端口会乱接,那你的C现成8000开着的话,那现成B10000就不会接到8000端口的信息了.OK,谁没有事自己发自己内容啊,晕.建议C监视8000一直开着,这样B就收不到自己的8000了,或者你自己判断,弄个协议啊嘿嘿,比如说发来的文本的第一行表示是需要发到哪个端口的,拿出来判断下是否对就行了,再说,你得将自己发给自己的SOCKET事先判断出来或者接收到后看IP相同就不处理OK

socket java实现客户端多线程接受消息并发送消息给服务器,并发执行

对于通信来说,不存在绝对的服务器和客户端,谁在等待别人来,谁就是服务器,谁主动去联系人,谁就是客户端。

所以。

你要想客户端接受消息,那在启动客户端的时候,在客户端程序里开始一个提供端口的Socket就可以了。

ServerSocket serverSocket = new ServerSocket(5000);

while (true) {

final Socket socket = serverSocket.accept();

new Thread() {

Socket mySocket = socket;

@Override

public void run() {

try {

System.out.println(mySocket);

InputStream is = mySocket.getInputStream();

byte[] bytes = new byte[1024];

int n = is.read(bytes);

System.out.println(new String(bytes, 0, n));

OutputStream os = mySocket.getOutputStream();

os.write(("server reply at time " + new Date()

.toString()).getBytes());

mySocket.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}.start();

}

关于socket的问题,求助大家!

可以尝试看看服务器端是否有这样的代码:try { socket.sendUrgentData(0xFF);} catch (Exception e) { e.printStackTrace();}我有尝试在服务器端加以上代码,客户端接收的数据就有你提到的情况。

TAG: 反应