comparison py/utils.py @ 293:d15dda1b1f76

merge
author Matt Johnston <matt@ucc.asn.au>
date Sat, 06 Jul 2019 18:29:45 +0800
parents 26eee8591f61
children 78c542f03030
comparison
equal deleted inserted replaced
292:28eb733cb803 293:d15dda1b1f76
2 import sys 2 import sys
3 #import ctypes 3 #import ctypes
4 import time 4 import time
5 import select 5 import select
6 import logging 6 import logging
7 import binascii
8 import json
7 9
8 D = logging.debug 10 D = logging.debug
9 L = logging.info 11 L = logging.info
10 W = logging.warning 12 W = logging.warning
11 E = logging.error 13 E = logging.error
58 if d is not None: 60 if d is not None:
59 return d 61 return d
60 time.sleep(try_time) 62 time.sleep(try_time)
61 return None 63 return None
62 64
63 new_f.func_name = func.func_name 65 new_f.__name__ = func.__name__
64 return new_f 66 return new_f
65 return inner 67 return inner
66 68
67 def readline(sock): 69 def readline(sock):
68 timeout = READLINE_SELECT_TIMEOUT 70 timeout = READLINE_SELECT_TIMEOUT
111 113
112 try: 114 try:
113 pid = os.fork() 115 pid = os.fork()
114 if pid > 0: 116 if pid > 0:
115 sys.exit(0) 117 sys.exit(0)
116 except OSError, e: 118 except OSError as e:
117 E("Bad fork()") 119 E("Bad fork()")
118 sys.exit(1) 120 sys.exit(1)
119 121
120 os.setsid() 122 os.setsid()
121 123
122 try: 124 try:
123 pid = os.fork() 125 pid = os.fork()
124 if pid > 0: 126 if pid > 0:
125 sys.exit(0) 127 sys.exit(0)
126 except OSError, e: 128 except OSError as e:
127 E("Bad fork()") 129 E("Bad fork()")
128 sys.exit(1) 130 sys.exit(1)
129 131
130 def uptime(): 132 def uptime():
131 try: 133 try:
132 return float(open('/proc/uptime', 'r').read().split(' ', 1)[0]) 134 return float(open('/proc/uptime', 'r').read().split(' ', 1)[0])
133 except Exception, e: 135 except Exception as e:
134 return -1 136 return -1
135 137
138
139 def json_load_round_float(s, **args):
140 return json.loads(s,parse_float = lambda f: round(float(f), 2), **args)