using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Linq;
using System.Text; using System.Net;
using System.Net.Sockets;
using System.IO;
using System.Threading;
using UnityEngine.UI;
using UnityEngine.Networking; public class ss : MonoBehaviour {
public TcpClient client;
public BinaryReader breader;
public BinaryWriter bwriter;
public NetworkStream netstream;
string abc = "";
string abc0 = "";
Text text;
public bodyController CF;
public float m_speed = 5f;
private static Socket clientSocket;
private static byte[] result = new byte[1024];
// Use this for initialization
void Start () {
CF = GameObject.Find("RimaVirtualBody/rima").GetComponent<bodyController>();
client = new TcpClient("172.20.20.241", 8140);
// client = new TcpClient("127.0.0.1", 8139);
// netstream = client.GetStream();
clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//IPAddress mIp = IPAddress.Parse("172.20.20.241");
//IPEndPoint ip_end_point = new IPEndPoint(mIp, 8140);
IPAddress mIp = IPAddress.Parse("127.0.0.1");
IPEndPoint ip_end_point = new IPEndPoint(mIp, 8140); clientSocket.Connect(ip_end_point); //breader = new BinaryReader(netstream);
// bwriter = new BinaryWriter(netstream); Thread threadReceive = new Thread(new ThreadStart(ReceiveData));
threadReceive.IsBackground = false;
threadReceive.Start(); //text = GameObject.Find("Canvas/Text").GetComponent<Text>();
}
private void ReceiveData()
{ int length = clientSocket.Receive(result);
//string receiveSting = null;
abc = Encoding.UTF8.GetString(result, 0, length); Debug.Log(abc); } // Update is called once per frame
void Update () {
if(abc!=abc0)
{
if (abc == "聆听") CF.hear();
if (abc == "跳舞") CF.dance();
if (abc == "谈话") CF.talk();
if(abc=="立正") CF.idle(); abc0 = abc;
}
else
{ }
}
}

总是只接受一个字符串,或者把对方发来的接成yige

前者原因是while(true)漏了,后者是因为没关闭clientSocket.Receive,可以clientSocket.close();

        while (true)
{
int length = clientSocket.Receive(result);
//string receiveSting = null;
abc = Encoding.UTF8.GetString(result, 0, length);
Debug.Log(abc);
}

前者改动后可以省略后者的改动。

unity3d C# soket客户端接受失败的更多相关文章

  1. soket客户端程序(一)

    soket客户端主要完成以下步骤: 1.建立soket套接字(将套接字理解为一个通道) 2.建立连接 3.向服务器发送http请求 4.接收得到的数据 5.关闭连接 6.本地处理得到的数据 http: ...

  2. ASP.NET MVC 客户端验证失败后表单仍然提交问题

    客户端验证失败后表单仍然提交问题!导致页面刷新,辛辛苦苦输入的内容荡然无存. 多么奇怪的问题.按道理,验证失败,就应该显示各种错误信息,不会提交表单才对.而现在,错误信息正常显示,但页面却刷新了一遍. ...

  3. FireFly 服务端 Unity3D黑暗世界 客户端 问题

    启动服务端成功截图: 连接成功截图: 测试服务端是否启动成功: 在Web输入:http://localhost:11009/  按回车 (查看cmd启动的服务端 是否多出如下显示) 服务端启动成功.P ...

  4. Unity3D Gamecenter 得分上传失败的处理

    Unity3DGamecenter 得分上传失败的处理. 常常会有种情况是,玩家在地铁或者飞机上没法通过wifi或者3G连接到服务器,从而会导致上传分数失败 解决方法: 这时候需要把得分存在Playe ...

  5. 记一次eureka客户端注册失败的问题

    最近老大给了一台新服务器,做测试用,从装软件开始,到把整个环境搭起来,因为之前没有完成搭过,所以费了几天时间,最后总算是成功跑起来了.昨天早上来更新下项目,在测试服务器上重新发布了一下,结果发现服务注 ...

  6. Subversion客户端接受服务器证书出现“The certificate hostname does not match”的问题

    当使用https://形式的URL连接Apache时,Subversion客户端将会受到两个类型的响应: 1.一个服务器证书 2.一个针对客户端证书的请求 在本人的应用场景主要涉及SVN仓库迁移的操作 ...

  7. unity3d 网页游戏客户端工程构建方案

    将一个项目分为两个编辑环境,一个是editor,一个是target. editor只是策划人员拖拖拽拽编辑场景,打包时程序自动将每个场景资源打包生成一个XXX.unity3d文件,并最后生成一个场景配 ...

  8. NBU客户端安装失败

    该服务器是阿里云上的centos6.8,是用来做oracle服务器,买来之后进行测试,发现没有安装图形化界面,还有部分包也没有安装.在oracle安装完成之后,尝试安装NBU的客户端,结果发生报错:T ...

  9. NFS客户端挂载失败之authenticated unmount request from

    1.故障现象 客户端挂载时夯住,无反应,无报错,如下图: 2.故障前对挂载目录的操作 发现故障前挂载目录被误删除,后通过备份分为恢复 3.故障排查步骤 .检查客户端及服务端防火墙规则 .检查selin ...

随机推荐

  1. 网络路径排查工具使用/原理浅析(MTR、traceroute、tracepath、windows下besttrace)

    在请求网络资源获取缓慢或者有丢包过程中.经常会使用到网络路径探测工具.linux 下最常用的有mtr.traceroute.tracepath 等. 你是否有一点疑惑,路径探测的原理到底是如何完成的, ...

  2. [源码解析] PyTorch 分布式之弹性训练(3)---代理

    [源码解析] PyTorch 分布式之弹性训练(3)---代理 目录 [源码解析] PyTorch 分布式之弹性训练(3)---代理 0x00 摘要 0x01 总体背景 1.1 功能分离 1.2 Re ...

  3. JAVA微信公众号网页开发——将接收的消息转发到微信自带的客服系统

    如果公众号处于开发模式,普通微信用户向公众号发消息时,微信服务器会先将消息POST到开发者填写的url上,无法直接推送给微信自带的客服功能.如果需要把用户推送的普通消息推送到客服功能中,就需要进行代码 ...

  4. JAVA 接口返回JSON格式转换类

    使用了Lombok插件 Result.java package com.utils; import com.jetsum.business.common.constant.Constant; impo ...

  5. 【LeetCode】849. Maximize Distance to Closest Person 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  6. Docker 与 K8S学习笔记(九)—— 容器间通信

    容器之间可通过IP.Docker DNS Server或joined三种方式进行通信,今天我们来详细学习一下. 一.IP通信 IP通信很简单,前一篇中已经有所涉及了,只要容器使用相同网络,那么就可以使 ...

  7. 理解Android的四种启动模式

    一:前言 四种模式分别为standard, singleTop, singleTask, singleInstance.自己应该明确一个概念先,single到底要single什么.每一个应用app都有 ...

  8. MCMC using Hamiltonian dynamics

    目录 算法 符号说明 Hamilton方程 物理解释 一些性质 可逆 Reversibility H的不变性 保体积 Volume preservation 辛 Symplecticness 离散化H ...

  9. Java初学者作业——编写Java程序,实现判断所输入字符的类型(数字、小写字母、大写字母或其他字符)

    返回本章节 返回作业目录 需求说明: 编写Java程序,实现判断所输入字符的类型(数字.小写字母.大写字母或其他字符) 实现思路: 声明变量c,用于存储用户输入的字符. 通过Scanner接收用户输入 ...

  10. 编写Java程序,使用 Socket类模拟用户加入 QQ 群时,QQ 小冰发送欢迎消息的场景(用户充当客户端,QQ 小冰充当服务端)

    查看本章节 查看作业目录 需求说明: 小冰是微软公司研发的人工智能机器人,被腾讯公司加入 QQ 群后,立即受到千万网友的喜爱.现在使用 Socket类模拟用户加入 QQ 群时,QQ 小冰发送欢迎消息的 ...