Conditions | 8 |
Total Lines | 23 |
Lines | 0 |
Ratio | 0 % |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | from time import time as timeout_timer |
||
17 | def compute_timer_precision(timer): |
||
18 | precision = None |
||
19 | points = 0 |
||
20 | timeout = timeout_timer() + 1.0 |
||
21 | previous = timer() |
||
22 | while timeout_timer() < timeout or points < 5: |
||
23 | for _ in XRANGE(10): |
||
24 | t1 = timer() |
||
25 | t2 = timer() |
||
26 | dt = t2 - t1 |
||
27 | if 0 < dt: |
||
28 | break |
||
29 | else: |
||
30 | dt = t2 - previous |
||
31 | if dt <= 0.0: |
||
32 | continue |
||
33 | if precision is not None: |
||
34 | precision = min(precision, dt) |
||
35 | else: |
||
36 | precision = dt |
||
37 | points += 1 |
||
38 | previous = timer() |
||
39 | return precision |
||
40 |