zoukankan      html  css  js  c++  java
  • 一个非常简单的.net网络通信框架XNetFramework(符源码与测试Demo)

    由于之前的项目需要使用到Socket,在百度google之后,没有找到一个轻量级的框架,虽然没找到,但还是因此看了一些大牛们的文章,很有收获,于是自己动手写了一个命名为XNetFramework(请原谅我对命名一向不讲究),本框架(暂且这么称呼,虽然人人都会,而且这东西相当小)足够轻量,采用UDP实现,主要用于客户端-服务器模式,本框架实现模拟心跳包(实现断线等事件触发),消息封装等功能,利用本框架可以快速实现网络上基本C/S模式的程序。

    下面就把一使用代码发上来:


     XNetFramework.UdpServer server;
            
    private void BtnRun_Click(object sender, EventArgs e)
            {
                server 
    = new XNetFramework.UdpServer(5632);
                BtnRun.Enabled 
    = false;
                server.ProcException 
    = (ex) => { MessageBox.Show(ex.Message); };
                server.RecevieData 
    += new XNetFramework.UdpServer.RecevieDataEventHadler(server_RecevieData);
                server.ClientAdd 
    += new XNetFramework.UdpServer.ClientAddEventHadler(server_ClientAdd);
                server.OffLine 
    += new XNetFramework.UdpServer.OffLineEventHandler(server_OffLine);
                server.RunServer();
            }
     client = new XNetFramework.UdpClient(TxtIp.Text, 5632,"1");
                client.ProcException 
    = (ex) => { MessageBox.Show(ex.Message); };
                client.RecevieData 
    += new XNetFramework.UdpClient.RecevieDataEventHadler(client_RecevieData);
                client.Start();

    整体来说是相当简单,实现原理解就不讲了。下面的下载包里有源码和使用示例,欢迎大家下载,希望和大家交流。

  • 相关阅读:
    Microsoft Updateclient更新
    DataTables warning: table id=dataTable
    BCB使用线程删除目录中的图片
    grep常见使用方法总结
    实战:percona-xtrabackup 2.1.9 for mysql 5.6.19
    代理模式之cglib动态代理
    hello world to php( mac 配置 xmapp virtual host)
    Android开发之AlarmManager具体解释
    linux入门教程(六) Linux文件与目录管理
    linux入门教程(五) Linux系统的远程登录
  • 原文地址:https://www.cnblogs.com/xianhong/p/1988752.html
Copyright © 2011-2022 走看看