Fix update_first
This commit is contained in:
parent
3aab9ef96c
commit
8c63d20880
|
@ -37,6 +37,8 @@ class ThreadedSegment(object):
|
||||||
if update_first and self.update_first:
|
if update_first and self.update_first:
|
||||||
self.update()
|
self.update()
|
||||||
self.start()
|
self.start()
|
||||||
|
elif not self.updated:
|
||||||
|
self.update()
|
||||||
|
|
||||||
if self.skip:
|
if self.skip:
|
||||||
return self.crashed_value
|
return self.crashed_value
|
||||||
|
@ -80,9 +82,10 @@ class ThreadedSegment(object):
|
||||||
self.interval = interval
|
self.interval = interval
|
||||||
self.has_set_interval = True
|
self.has_set_interval = True
|
||||||
|
|
||||||
def set_state(self, interval=None, **kwargs):
|
def set_state(self, interval=None, update_first=True, **kwargs):
|
||||||
if not self.did_set_interval or interval:
|
if not self.did_set_interval or interval:
|
||||||
self.set_interval(interval)
|
self.set_interval(interval)
|
||||||
|
self.updated = not (update_first and self.update_first)
|
||||||
|
|
||||||
def startup(self, pl, **kwargs):
|
def startup(self, pl, **kwargs):
|
||||||
self.run_once = False
|
self.run_once = False
|
||||||
|
@ -111,12 +114,13 @@ def printed(func):
|
||||||
|
|
||||||
class KwThreadedSegment(ThreadedSegment):
|
class KwThreadedSegment(ThreadedSegment):
|
||||||
drop_interval = 10 * 60
|
drop_interval = 10 * 60
|
||||||
update_first = False
|
update_first = True
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super(KwThreadedSegment, self).__init__()
|
super(KwThreadedSegment, self).__init__()
|
||||||
self.queries = {}
|
self.queries = {}
|
||||||
self.crashed = set()
|
self.crashed = set()
|
||||||
|
self.updated = True
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def key(**kwargs):
|
def key(**kwargs):
|
||||||
|
@ -157,7 +161,7 @@ class KwThreadedSegment(ThreadedSegment):
|
||||||
for key in removes:
|
for key in removes:
|
||||||
self.queries.pop(key)
|
self.queries.pop(key)
|
||||||
|
|
||||||
def set_state(self, interval=None, **kwargs):
|
def set_state(self, interval=None, update_first=True, **kwargs):
|
||||||
if not self.did_set_interval or (interval < self.interval):
|
if not self.did_set_interval or (interval < self.interval):
|
||||||
self.set_interval(interval)
|
self.set_interval(interval)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue