NetworkComms网络通信框架序言

NetworkComms通信框架,是一款来自英国的c#语言编写的通信框架,历时6年研发,成熟稳定,性能可靠。

NetworkComms v3的核心功能在一定程度上是以异步的方式进行的。

NetworkComms提供了相应的功能,使得可以同步请求数据和获得相应的相应,非常的简单。

try
{
     //连接信息类
    ConnectionInfo connectionInfo = );

    //获取一个TCP连接
    TCPConnection serverConnection = TCPConnection.GetConnection(connectionInfo);

    //发送一个消息类型是“RequestCustomObject“的,数据类型为int,具体数值为 “1000”的数据给服务器,并获取消息类型为“CustomObjectReply",类型为CustomObject的数据
    CustomObject myCustomObject = serverConnection.SendReceiveObject<CustomObject>();

}
catch (ExpectedReturnTimeoutException)
{

}

服务器上对应的处理方法:

NetworkComms.AppendGlobalIncomingPacketHandler<int>("RequestCustomObject", (packetHeader, connection, input) =>
    {
         //创建一个要返回的类型
        CustomObject myCustomObject = new CustomObject();

        //把要返回的类型,发送给客户端
        connection.SendObject("CustomObjectReply", myCustomObject);
    });

原文:http://www.networkcomms.net/synchronous-send-and-receive/

www.networkcomms.cn整理

NetworkComms V3 之同步收发数据的更多相关文章

  1. NetworkComms V3 使用Json序列化器进行网络通信

    刚才在网上闲逛,偶然看到一篇文章 C#(服务器)与Java(客户端)通过Socket传递对象 网址是:http://www.cnblogs.com/iyangyuan/archive/2012/12/ ...

  2. iOS开发之音频口通信-通过方波来收发数据

    之前做过的项目有需要通过音频口通信用方波来收发数据,由于这方面的资料比较少,下面就介绍下其原理,希望能给大家帮助. 一. 音频通信简介大家应该都知道支付宝声波支付和拉卡拉吧,它们都是利用手机的音频口( ...

  3. NetworkComms V3 之发送UDP广播消息

    NetworkComms网络通信框架序言 NetworkComms通信框架,是一款来自英国的c#语言编写的通信框架,历时6年研发,成熟稳定,性能可靠. NetworkComms v3目前只支持基本的U ...

  4. Python——用socket和线程实现全双工收发数据

    用socket和线程实现全双工收发数据 1.基础知识 Socket(套接字) 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.由此知道套接字是全双工的. 线程 ...

  5. NetworkComms V3 序列化器之Protobuf.net和 JSONSerializer

    NetworkComms v3版本中,默认使用的是protobuf.net序列化器. 即当您没有指定序列化的时候,系统自动使用默认的protobuf.net序列化器. 当然我们也可以自己指定序列化器 ...

  6. dsp28377控制DM9000收发数据——第三版程序,通过外部引脚触发来实现中断接受数据,优化掉帧现象

    //-------------------------------------------------------------------------------------------- - //D ...

  7. dsp28377控制DM9000收发数据——第二版程序,能够实现手术功能,但是容易掉帧;使用读取中断寄存器的方式判断中断

    G:\controlSUITE\device_support\F2837xD\v180\F2837xD_examples_Cpu1\emif1_16bit_asram\cpu01\emif1_16bi ...

  8. dsp28377控制DM9000收发数据

    首先感谢上一篇转载文章的作者给出的参考,下面是一些自己在调试过程中的一些步骤: 首先把代码贴上来: //------------------------------------------------ ...

  9. boost.asio与boost.log同时使用导致socket不能正常收发数据

    现象: 1. 没有使用boost.log前能正常收发数据 2.加入boost.log后async_connect没有回调 fix过程: 1. gdb调试发现程序block在pthread_timed_ ...

随机推荐

  1. 友善p35屏

    友善p35 屏,x轴方向从左往右移(0——>320),Y轴方向从上往下开始(0——>240)

  2. Android--再探MVP模式

    1,上一篇我们已经了解了大致的MVP模式,下面再通过这个登录功能的例子 ,我们能过更加容易的掌握MVP模式,再来补充一些闲外话:MVP 是 MVC 的变种,其实是一种升级.要说 MVP 就要说说 MV ...

  3. 用C++实现的SDK跨平台心得体会

    C/C++的跨平台特性相比于Java更加原生(Java是一次编译到处运行,而C/C ++则需要拿着源码重新编译一遍),实现一个C/C++跨平台程序一般有几点做法: 1.使用Qt 2.使用ANSI C/ ...

  4. 关于学习Knockoutjs--入门(一)

    前段时间做项目一直在用knockout,虽然用着不怎么利索,但是知识是一点一点探索的. 首先介绍一下 Knockout是什么? 他是一个很优秀的js库,他最大的功能就是实现双向绑定,它可以帮助你仅使用 ...

  5. OAuth2.0概述

    OAuth2.0较1.0相比,整个授权验证流程更简单更安全,也是未来最主要的用户身份验证和授权方式. 关于OAuth2.0协议的授权流程可以参考下面的流程图,其中Client指第三方应用,Resour ...

  6. HDU 4770 Lights Against DudelyLights

    Lights Against Dudely Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  7. Codeforces 749C:Voting(暴力模拟)

    http://codeforces.com/problemset/problem/749/C 题意:有n个人投票,分为 D 和 R 两派,从1~n的顺序投票,轮到某人投票的时候,他可以将对方的一个人K ...

  8. Eclipse建立Maven项目后无法建立src/main/java资源文件夹

    在项目上右键选择properties,然后点击java build path,在Librarys下,编辑JRE System Library,选择workspace default jre就可以了.

  9. Android Layout XML属性

    转载自并做少量添加:http://www.cnblogs.com/playing/archive/2011/04/07/2008620.html Layout对于迅速的搭建界面和提高界面在不同分辨率的 ...

  10. js轮播

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...