提交 30a27967 编写于 作者: Y yangyaming

Suppress the signal traceback.

上级 ae9f132c
...@@ -10,10 +10,11 @@ import Queue ...@@ -10,10 +10,11 @@ import Queue
import time import time
import numpy as np import numpy as np
from threading import Thread from threading import Thread
import signal
from multiprocessing import Manager, Process from multiprocessing import Manager, Process
import data_utils.augmentor.trans_mean_variance_norm as trans_mean_variance_norm import data_utils.augmentor.trans_mean_variance_norm as trans_mean_variance_norm
import data_utils.augmentor.trans_add_delta as trans_add_delta import data_utils.augmentor.trans_add_delta as trans_add_delta
from data_utils.util import suppress_complaints from data_utils.util import suppress_complaints, suppress_signal
class SampleInfo(object): class SampleInfo(object):
...@@ -134,9 +135,9 @@ class DataReader(object): ...@@ -134,9 +135,9 @@ class DataReader(object):
shuffle_block_num (int): Block number indicating the minimum unit to do shuffle_block_num (int): Block number indicating the minimum unit to do
shuffle. shuffle.
random_seed (int): Random seed. random_seed (int): Random seed.
verbose (int): Whether to suppress the complaints from sub-process. If verbose (int): If set to 0, complaints including exceptions and signal
set to 0, all complaints from sub-process will be traceback from sub-process will be suppressed. If set
suppressed. If set to 1, all complaints will be printed. to 1, all complaints will be printed.
""" """
def __init__(self, def __init__(self,
...@@ -223,6 +224,10 @@ class DataReader(object): ...@@ -223,6 +224,10 @@ class DataReader(object):
@suppress_complaints(verbose=self._verbose) @suppress_complaints(verbose=self._verbose)
def ordered_processing_task(sample_info_queue, sample_queue, out_order): def ordered_processing_task(sample_info_queue, sample_queue, out_order):
if self._verbose == 0:
signal.signal(signal.SIGTERM, suppress_signal())
signal.signal(signal.SIGINT, suppress_signal())
def read_bytes(fpath, start, size): def read_bytes(fpath, start, size):
f = open(fpath, 'r') f = open(fpath, 'r')
f.seek(start, 0) f.seek(start, 0)
......
...@@ -33,6 +33,10 @@ def lodtensor_to_ndarray(lod_tensor): ...@@ -33,6 +33,10 @@ def lodtensor_to_ndarray(lod_tensor):
return ret, lod_tensor.lod() return ret, lod_tensor.lod()
def suppress_signal(signo, stack_frame):
pass
def suppress_complaints(verbose): def suppress_complaints(verbose):
def decorator_maker(func): def decorator_maker(func):
def suppress_warpper(*args, **kwargs): def suppress_warpper(*args, **kwargs):
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册