Пример #1
0
 public IPCAccessor()
 {
     TaskPool        = new SelfRunningTaskPool(TaskPoolInterval, "IPCAccessor Task Pool");
     m_updateTimer   = TaskPool.CallPeriodically(UpdateInterval, Tick);
     m_readArgs      = new SocketAsyncEventArgs();
     m_bufferSegment = BufferManager.GetSegment(BufferSize);
 }
Пример #2
0
 public IPCClient(Socket socket)
 {
     Socket               = socket;
     TaskPool             = new SelfRunningTaskPool(TaskPoolInterval, "IPCClient Task Pool");
     m_readArgs           = new SocketAsyncEventArgs();
     m_readArgs.UserToken = this;
     m_bufferSegment      = BufferManager.GetSegment(IPCHost.BufferSize);
 }
Пример #3
0
        public ServerPacketHandler()
        {
            m_taskPool = new SelfRunningTaskPool(100, "Client task pool");
            m_taskPool.Start();

            m_taskPoolSecondary = new SelfRunningTaskPool(100, "Secondary Client task pool");
            m_taskPoolSecondary.Start();
        }
Пример #4
0
        public static void Initialize()
        {
            if (isInitialized)
            {
                return;
            }

            m_taskpool = new SelfRunningTaskPool(500, "Web TaskPool");
            m_taskpool.Start();

            isInitialized = true;
        }
 internal void Execute(SelfRunningTaskPool queue)
 {
     try
     {
         this.Callback();
     }
     finally
     {
         this.LastCallTime = queue.LastUpdateTime;
     }
     if (this.IsOneShot)
     {
         queue.CancelSimpleTimer(this);
     }
 }
Пример #6
0
 public void Initialize()
 {
     if (MongoLogger.IsMongoLoggerEnabled)
     {
         MongoClient mongoClient = new MongoClient(string.Format("mongodb://{0}:{1}@{2}:{3}", new object[]
         {
             MongoLogger.MongoDBConfiguration.User,
             MongoLogger.MongoDBConfiguration.Password,
             MongoLogger.MongoDBConfiguration.Host,
             3307
         }));
         MongoServer server = mongoClient.GetServer();
         this.m_database = server.GetDatabase(MongoLogger.MongoDBConfiguration.DbName);
         this.m_taskPool = new SelfRunningTaskPool(100, "Mongo logger");
     }
 }
Пример #7
0
        public void Initialize()
        {
            Instance = this;

            GCSettings.LatencyMode = GCSettings.IsServerGC ? GCLatencyMode.Batch : GCLatencyMode.Interactive;

            NLogHelper.DefineLogProfile(true, true);
            NLogHelper.EnableLogging();

            logger.Info("Initializing Database...");
            DBAccessor = new DatabaseAccessor(DatabaseConfiguration);
            DBAccessor.RegisterMappingAssembly(Assembly.GetExecutingAssembly());
            DBAccessor.Initialize();

            logger.Info("Opening Database...");
            DBAccessor.OpenConnection();
            DBAccessor.Database.ExecutingCommand += OnExecutingDBCommand;

            MessageReceiver.Initialize();
            ProtocolTypeManager.Initialize();

            HandlerManager = ServerPacketHandler.Instance;
            HandlerManager.RegisterAll(Assembly.GetExecutingAssembly());

            ClientManager.Instance.Initialize(CreateClient);
            ClientManager.Instance.Start("x.x.x.x", 9250);

            WebServer.Initialize();

            IOTaskPool = new SelfRunningTaskPool(50, "Main TaskPool");
            IOTaskPool.CallPeriodically((int)TimeSpan.FromSeconds(10).TotalMilliseconds, KeepSQLConnectionAlive);
            IOTaskPool.CallPeriodically((int)TimeSpan.FromSeconds(10).TotalMilliseconds, WriteBufferLogs);

            IOTaskPool.Start();

            logger.Info("Server listening at port 9250");
            logger.Info("WebServer listening at port 9251");


            //     TeknoServer server = new TeknoServer("test", "test");
        }
Пример #8
0
 public FakeClientPacketHandler()
 {
     m_taskPool = new SelfRunningTaskPool(100, "Fake client task pool");
     m_taskPool.Start();
 }