Beispiel #1
0
        public static void SetAnonymousActorFiberFactory(FiberFactoryEx fiberFactory)
        {
            Guard.AgainstNull(fiberFactory, "fiberFactory");
            _fiberFactory = fiberFactory;

            CreateAnonymousActorFactory();
        }
Beispiel #2
0
		public static void SetAnonymousActorFiberFactory(FiberFactoryEx fiberFactory)
		{
			Guard.AgainstNull(fiberFactory, "fiberFactory");
			_fiberFactory = fiberFactory;

			CreateAnonymousActorFactory();
		}
Beispiel #3
0
		static AnonymousActor()
		{
			_fiberFactory = executor => new PoolFiber(executor);

			_schedulerFactory = () => new TimerScheduler(new PoolFiber());

			CreateAnonymousActorFactory();
		}
Beispiel #4
0
        static AnonymousActor()
        {
            _fiberFactory = executor => new PoolFiber(executor);

            _schedulerFactory = () => new TimerScheduler(new PoolFiber());

            CreateAnonymousActorFactory();
        }
Beispiel #5
0
        public ActorFactoryImpl(FiberFactoryEx fiberFactory, SchedulerFactory schedulerFactory,
                                IEnumerable <ActorConvention <TActor> > conventions,
                                Func <Fiber, Scheduler, Inbox, TActor> factory)
        {
            Guard.AgainstNull(fiberFactory, "fiberFactory");
            Guard.AgainstNull(schedulerFactory, "schedulerFactory");
            Guard.AgainstNull(conventions, "conventions");
            Guard.AgainstNull(factory, "factory");

            _fiberFactory     = fiberFactory;
            _schedulerFactory = schedulerFactory;
            _conventions      = conventions.ToArray();
            _factory          = factory;
        }
        public T UseFiberFactory(FiberFactoryEx fiberFactory)
        {
            _fiberFactory = fiberFactory;

            return(this as T);
        }
        public T UseFiberFactory(FiberFactory fiberFactory)
        {
            _fiberFactory = executor => fiberFactory();

            return(this as T);
        }
        public T HandleOnThreadFiber()
        {
            _fiberFactory = executor => new ThreadFiber(executor);

            return(this as T);
        }
        public T HandleOnFiber(Fiber fiber)
        {
            _fiberFactory = executor => fiber;

            return(this as T);
        }
        public T HandleOnPoolFiber()
        {
            _fiberFactory = executor => new PoolFiber(executor);

            return(this as T);
        }
        public T HandleOnCallingThread()
        {
            _fiberFactory = executor => new SynchronousFiber(executor);

            return(this as T);
        }