|
using System;
using System.Diagnostics;
using CommonLib;
using Hik.Communication.Scs.Communication.EndPoints.Tcp;
using Hik.Communication.Scs.Communication.Messages;
using Hik.Communication.Scs.Server;
namespace ServerApp
{
public class OneWayServerCustomProtocol
{
private static int _messageCount;
private static Stopwatch _stopwatch;
public static void Run()
{
var server = ScsServerFactory.CreateServer(new ScsTcpEndPoint(10033));
server.WireProtocolFactory = new MyWireProtocolFactory();
server.ClientConnected += server_ClientConnected;
server.Start();
Console.WriteLine("Press enter to stop server");
Console.ReadLine();
server.Stop();
}
static void server_ClientConnected(object sender, ServerClientEventArgs e)
{
e.Client.MessageReceived += Client_MessageReceived;
}
static void Client_MessageReceived(object sender, MessageEventArgs e)
{
++_messageCount;
if (_messageCount == 1)
{
_stopwatch = Stopwatch.StartNew();
}
else if (_messageCount == Consts.MessageCount)
{
_stopwatch.Stop();
Console.WriteLine(Consts.MessageCount + " message is received in " + _stopwatch.Elapsed.TotalMilliseconds.ToString("0.000") + " ms.");
}
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I have started programming at 14 years old using Pascal as hobby. Then I interested in web development (HTML, JavaScript, ASP...) before university.
I graduated from Sakarya University Computer Engineering. At university, I learned C++, Visual Basic.NET, C#, ASP.NET and Java. I partly implemented ARP, IP and TCP protocols in Java as my final term project.
Now, I am working on Windows and web based software development mostly using Microsoft technologies in my own company.
My open source projects:
* ABP Framework:
https://abp.io
* jTable:
http://jtable.org
* Others:
https://github.com/hikalkan
My personal web site:
https://halilibrahimkalkan.com