【游戏技术群】959392658  【游戏出海群】12067810
排列三2014079期正版藏机图 手机端
开发者专栏

关注:2373

当前位置:排列三2014079期正版藏机图 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 5745|回复: 51
发新帖

排列三近500期走势图: [游戏小猪] 小猪笔记,从零开始搭建socket框架,hello world

[复制链接]  [移动端链接]
6蛮牛粉丝
1134/1500
排名
2170
昨日变化
8

排列三2014079期正版藏机图 www.d0po.cn 11

主题

76

帖子

1134

积分

Rank: 6Rank: 6Rank: 6

UID
228559
好友
7
蛮牛币
2533
威望
0
注册时间
2017-6-25
在线时间
407 小时
最后登录
2018-12-15

专栏作家

QQ
跳转到指定楼层
楼主
发表于 2018-4-29 20:04:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
   相信困扰很多萌新进阶的又很多,socket就是其中的一个,那么我们现在就把他掰开了揉细了,一步步自己来完成一个看起来像那么回事的socket框架;当然了,这里主要是客户端的   首先,socket的几个步骤,不必多说,声明socket,绑定,设置最大监听数,服务端接受链接,接收消息,发送消息;客户端声明socket,链接,接收,发送;
   一个看起来像那么回事的socket框架,应该具备以下几点功能
        1.  首先当然是能正常的发送和接收消息
        2. 可以同时处理多个socket,因为服务器可能并不是只有一个,比如说,又运营服务器,游戏服务器,匹配服务器,战斗服务器等等,这种情况就需要又多个socket
        3. 可以处理数据的压缩和解压缩,这个又现成的,我们拿过来用就行了
        4. 可以处理数据的粘包和分包,比如说一条数据又100个长度,而第一次只接收到了10个,后续再接收到了,把他组装起来
        5. 数据的加密,加密算法可以自己写,也可以用网上现成的,不做讨论
        6. 数据转byte数组和byte数组转需要数据
        7. 协议的规定以及消息的分发
  以上就是一个看起来像那么回事的socket框架应该具备的基本功能了,如有遗漏,请见谅;按照惯例,我们当然是来个最简单的,首先让我们的程序能够正常的跑起来。socket的连接,分为了同步方式和异步方式,既然又同步和异步了,那么我们当然是用最简单的异步方式了,这样可以照顾到那些对于多线程编程还是一脸懵逼的童鞋;
     首先再服务端和客户端都定义一个socket,然后设置ip和端口号,以及初始化;服务端绑定端口号,并且设置最大连接数,开启监听,接受连接;客户端定义个socket,同样的设置端口和IP,并不需要绑定端口什么的,客户端主动发起连接;
   

   至于这个  ConnectSocket 先不用管他,我准备将来做连接池用的,如果有必要的话,因为我们这里主要是想要搭建一个客户端的socket框架,既然说到这里了,那么就说一下连接池是个什么东西,他当然是一个保存socket的容器,就和普通的对象池一样,他是一个连接重复使用的东西,为了避免每次都重新创建,这样耗费性能;有必要的话,后边会教大家撸的;
     我们前边说了,我们采用c#的socket异步连接;再c#中,几乎所有的异步连接,都会以Begin开头,以End结尾,额,暂且叫他结尾吧;所有的Begin都接收一个以IAsyncResult 为参数的回掉函数。其中End额在其中,返回异步操作的结果;而IAsyncResult的AsyncState属性会返回一个obj,我们用来还原异步操作的对象,也就是socket;然后用这个socket,来调用end方法socket.EndXXX,来得到异步操作的结果。服务端需要循环调用,达到循环接收连接以及接受消息的目的;

         然后我们首先启动服务端,再启动客户端,就可以看到,连接已经成功了;
          这里我用按下空格键,来发送一条消息,服务端收到客户端发送的消息后,再返回来一条;
      





新建文件夹.zip

151.52 KB, 下载次数: 231

售价: 1 蛮牛币  [记录]

评分

参与人数 1鲜花 +5 收起 理由
研究者 + 5 很给力!

查看全部评分


7日久生情
3434/5000
排名
1702
昨日变化
5

0

主题

2127

帖子

3434

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
219676
好友
1
蛮牛币
2633
威望
0
注册时间
2017-7-12
在线时间
559 小时
最后登录
2018-12-14

活力之星

沙发
发表于 2018-4-29 21:35:16 | 只看该作者
谢谢分享

7日久生情
1917/5000
排名
4348
昨日变化
2

0

主题

1335

帖子

1917

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
267381
好友
6
蛮牛币
3212
威望
0
注册时间
2018-2-1
在线时间
258 小时
最后登录
2018-11-6
板凳
发表于 2018-4-30 08:17:49 | 只看该作者
谢谢分享

7日久生情
2896/5000
排名
238
昨日变化

0

主题

117

帖子

2896

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
846
好友
3
蛮牛币
482
威望
0
注册时间
2013-7-13
在线时间
779 小时
最后登录
2018-8-23
地板
发表于 2018-4-30 09:20:47 | 只看该作者
给力!威武!

7日久生情
1944/5000
排名
879
昨日变化

7

主题

238

帖子

1944

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
167044
好友
0
蛮牛币
3307
威望
0
注册时间
2016-9-6
在线时间
575 小时
最后登录
2018-12-8
5#
发表于 2018-4-30 10:46:19 | 只看该作者
6666666664324

5熟悉之中
685/1000
排名
4164
昨日变化
21

0

主题

188

帖子

685

积分

Rank: 5Rank: 5

UID
267103
好友
0
蛮牛币
1699
威望
0
注册时间
2018-1-31
在线时间
157 小时
最后登录
2018-12-14
6#
发表于 2018-4-30 11:57:10 | 只看该作者

3偶尔光临
190/300
排名
9953
昨日变化
1

0

主题

26

帖子

190

积分

Rank: 3Rank: 3Rank: 3

UID
267262
好友
0
蛮牛币
285
威望
0
注册时间
2018-2-1
在线时间
60 小时
最后登录
2018-11-13
7#
发表于 2018-5-1 13:16:25 | 只看该作者
{:107:}{:107:}{:107:}

7日久生情
1825/5000
排名
2249
昨日变化
2

5

主题

721

帖子

1825

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
239879
好友
1
蛮牛币
3962
威望
0
注册时间
2017-8-26
在线时间
495 小时
最后登录
2018-12-12
8#
发表于 2018-5-2 08:47:31 | 只看该作者
谢谢分享

7日久生情
3733/5000
排名
2030
昨日变化
6

0

主题

2656

帖子

3733

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185339
好友
1
蛮牛币
4560
威望
0
注册时间
2016-11-20
在线时间
425 小时
最后登录
2018-12-14
9#
发表于 2018-5-2 09:34:58 | 只看该作者

5熟悉之中
803/1000
排名
5224
昨日变化
1

41

主题

161

帖子

803

积分

Rank: 5Rank: 5

UID
243169
好友
0
蛮牛币
559
威望
0
注册时间
2017-9-13
在线时间
337 小时
最后登录
2018-9-7
10#
发表于 2018-5-2 11:20:51 | 只看该作者
这个vs写的几个引用的2017的能显示出来吗?怎么设置啊

7日久生情
1585/5000
排名
1438
昨日变化
5

0

主题

467

帖子

1585

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
87577
好友
0
蛮牛币
5351
威望
0
注册时间
2015-3-31
在线时间
270 小时
最后登录
2018-12-15
11#
发表于 2018-5-2 12:15:20 | 只看该作者
henhaohenqiangda

3偶尔光临
165/300
排名
9846
昨日变化
2

0

主题

8

帖子

165

积分

Rank: 3Rank: 3Rank: 3

UID
277917
好友
3
蛮牛币
215
威望
0
注册时间
2018-4-19
在线时间
49 小时
最后登录
2018-11-26
12#
发表于 2018-5-2 17:16:40 | 只看该作者
谢谢分享

5熟悉之中
672/1000
排名
3343
昨日变化
16

0

主题

59

帖子

672

积分

Rank: 5Rank: 5

UID
197052
好友
0
蛮牛币
2733
威望
0
注册时间
2016-12-29
在线时间
185 小时
最后登录
2018-12-14
13#
发表于 2018-5-2 19:24:19 | 只看该作者
感谢分享

7日久生情
1553/5000
排名
1051
昨日变化

0

主题

211

帖子

1553

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
37063
好友
1
蛮牛币
4473
威望
0
注册时间
2014-7-30
在线时间
320 小时
最后登录
2018-9-25
14#
发表于 2018-5-2 20:06:08 | 只看该作者
{:90:}{:90:}{:90:}{:90:}{:90:}

5熟悉之中
849/1000
排名
5615
昨日变化

0

主题

438

帖子

849

积分

Rank: 5Rank: 5

UID
146677
好友
9
蛮牛币
2749
威望
0
注册时间
2016-4-25
在线时间
169 小时
最后登录
2018-12-10
QQ
15#
发表于 2018-5-3 09:08:07 | 只看该作者
谢谢分享,给个支持

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 排列三2014079期正版藏机图 返回列表
  • 首批限竞房正式入市 戳三大盘看详情! ——凤凰网房产北京 2018-12-09
  • 世界杯频爆冷门网友大呼“天台见”!警方:不要冲动,不要跳楼 2018-08-21
  • 始终如一的是:美国优先。 2018-08-21
  • 648| 878| 20| 157| 981| 615| 216| 648| 763| 939|