25 lines
		
	
	
		
			685 B
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			685 B
		
	
	
	
		
			C#
		
	
	
using System;
 | 
						||
using DotNetty.Common.Utilities;
 | 
						||
 | 
						||
namespace dotNetty_kcp.thread
 | 
						||
{
 | 
						||
    /**
 | 
						||
     * netty的实现轮实现,在unity环境下测试会导致cpu跑到50%
 | 
						||
     * 服务器端使用不错
 | 
						||
     */
 | 
						||
    public class HashedWheelScheduleThread:IScheduleThread
 | 
						||
    {
 | 
						||
        
 | 
						||
        private readonly HashedWheelTimer _hashedWheelTimer = new HashedWheelTimer(TimeSpan.FromMilliseconds(1),512,-1 );
 | 
						||
 | 
						||
        public void schedule(IScheduleTask scheduleTask,TimeSpan timeSpan)
 | 
						||
        {
 | 
						||
            _hashedWheelTimer.NewTimeout(scheduleTask,timeSpan);
 | 
						||
        }
 | 
						||
 | 
						||
        public void stop()
 | 
						||
        {
 | 
						||
            _hashedWheelTimer.StopAsync();
 | 
						||
        }
 | 
						||
    }
 | 
						||
} |