def _start(self, app_context, **kwargs): if self.__input is None: self.__input = app_context.inst_data_mgr.get_series(self.input.name) self.__input.subject.subscribe(on_next=self.on_update) if self.__output_bar_type == BarType.Time: current_ts = self.__clock.now() next_ts = Bar.get_next_bar_start_time(current_ts, self.__output_size) diff = next_ts - current_ts Observable.timer(int(diff), self.__output_size * 1000, self.__clock.scheduler).subscribe( on_next=self.publish)
def _start(self, app_context, **kwargs): if self.__input is None: self.__input = app_context.inst_data_mgr.get_series( self.input.name) self.__input.subject.subscribe(on_next=self.on_update) if self.__output_bar_type == BarType.Time: current_ts = self.__clock.now() next_ts = Bar.get_next_bar_start_time(current_ts, self.__output_size) diff = next_ts - current_ts Observable.timer( int(diff), self.__output_size * 1000, self.__clock.scheduler).subscribe(on_next=self.publish)
class MyNoopGreenlet(Greenlet): def __init__(self, seconds): Greenlet.__init__(self) self.seconds = seconds def _run(self): gevent.sleep(self.seconds) def __str__(self): return 'MyNoopGreenlet(%s)' % self.seconds current_ts = DateUtils.datetime_to_unixtimemillis(starttime) next_ts = Bar.get_next_bar_start_time(current_ts, BarSize.S5) diff = next_ts - current_ts # Observable.timer(int(diff), BarSize.S5 * 1000, scheduler2).subscribe(action) # scheduler1.advance_to(starttime) # scheduler2.schedule_absolute(datetime.utcnow() + timedelta(seconds=3), action, scheduler2.now) # print "1", scheduler1.now() # scheduler1.advance_to(starttime + timedelta(seconds=1)) # print "2", scheduler1.now() # scheduler1.advance_to(starttime + timedelta(seconds=2)) # print "3", scheduler1.now() # scheduler1.advance_to(starttime + timedelta(seconds=3)) # print "4", scheduler1.now() # scheduler1.advance_by(2000) # print "5", scheduler1.now()
class MyNoopGreenlet(Greenlet): def __init__(self, seconds): Greenlet.__init__(self) self.seconds = seconds def _run(self): gevent.sleep(self.seconds) def __str__(self): return 'MyNoopGreenlet(%s)' % self.seconds current_ts = DateUtils.datetime_to_unixtimemillis(starttime) next_ts = Bar.get_next_bar_start_time(current_ts, BarSize.S5) diff = next_ts - current_ts # Observable.timer(int(diff), BarSize.S5 * 1000, scheduler2).subscribe(action) # scheduler1.advance_to(starttime) # scheduler2.schedule_absolute(datetime.utcnow() + timedelta(seconds=3), action, scheduler2.now) # print "1", scheduler1.now() # scheduler1.advance_to(starttime + timedelta(seconds=1)) # print "2", scheduler1.now() # scheduler1.advance_to(starttime + timedelta(seconds=2)) # print "3", scheduler1.now() # scheduler1.advance_to(starttime + timedelta(seconds=3)) # print "4", scheduler1.now() # scheduler1.advance_by(2000) # print "5", scheduler1.now() current_ts = DateUtils.datetime_to_unixtimemillis(starttime)