本文整理汇总了Python中signal.SIGXCPU属性的典型用法代码示例。如果您正苦于以下问题:Python signal.SIGXCPU属性的具体用法?Python signal.SIGXCPU怎么用?Python signal.SIGXCPU使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类signal
的用法示例。
在下文中一共展示了signal.SIGXCPU属性的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: sig2exc
# 需要导入模块: import signal [as 别名]
# 或者: from signal import SIGXCPU [as 别名]
def sig2exc(sig, frm):
""" signal handler """
error = PilotErrors()
runJob.setGlobalPilotErrorDiag("!!FAILED!!3000!! SIGTERM Signal %s is caught in child pid=%d!\n" % (sig, os.getpid()))
tolog(runJob.getGlobalPilotErrorDiag())
if sig == signal.SIGTERM:
runJob.setGlobalErrorCode(error.ERR_SIGTERM)
elif sig == signal.SIGQUIT:
runJob.setGlobalErrorCode(error.ERR_SIGQUIT)
elif sig == signal.SIGSEGV:
runJob.setGlobalErrorCode(error.ERR_SIGSEGV)
elif sig == signal.SIGXCPU:
runJob.setGlobalErrorCode(error.ERR_SIGXCPU)
elif sig == signal.SIGBUS:
runJob.setGlobalErrorCode(error.ERR_SIGBUS)
elif sig == signal.SIGUSR1:
runJob.setGlobalErrorCode(error.ERR_SIGUSR1)
else:
runJob.setGlobalErrorCode(error.ERR_KILLSIGNAL)
runJob.setFailureCode(runJob.getGlobalErrorCode)
# print to stderr
print >> sys.stderr, runJob.getGlobalPilotErrorDiag()
raise SystemError(sig)
示例2: sig2exc
# 需要导入模块: import signal [as 别名]
# 或者: from signal import SIGXCPU [as 别名]
def sig2exc(sig, frm):
""" signal handler """
error = PilotErrors()
runJob.setGlobalPilotErrorDiag("!!FAILED!!3000!! SIGTERM Signal %s is caught in child pid=%d!\n" % (sig, os.getpid()))
tolog(runJob.getGlobalPilotErrorDiag())
if sig == signal.SIGTERM:
runJob.setGlobalErrorCode(error.ERR_SIGTERM)
elif sig == signal.SIGQUIT:
runJob.setGlobalErrorCode(error.ERR_SIGQUIT)
elif sig == signal.SIGSEGV:
runJob.setGlobalErrorCode(error.ERR_SIGSEGV)
elif sig == signal.SIGXCPU:
runJob.setGlobalErrorCode(error.ERR_SIGXCPU)
elif sig == signal.SIGBUS:
runJob.setGlobalErrorCode(error.ERR_SIGBUS)
elif sig == signal.SIGUSR1:
runJob.setGlobalErrorCode(error.ERR_SIGUSR1)
else:
runJob.setGlobalErrorCode(error.ERR_KILLSIGNAL)
runJob.setFailureCode(runJob.getGlobalErrorCode())
# print to stderr
print >> sys.stderr, runJob.getGlobalPilotErrorDiag()
raise SystemError(sig)
示例3: limitedTime
# 需要导入模块: import signal [as 别名]
# 或者: from signal import SIGXCPU [as 别名]
def limitedTime(second, func, *args, **kw):
second = fixTimeout(second)
old_alarm = signal(SIGXCPU, signalHandler)
current = getrlimit(RLIMIT_CPU)
try:
setrlimit(RLIMIT_CPU, (second, current[1]))
return func(*args, **kw)
finally:
setrlimit(RLIMIT_CPU, current)
signal(SIGXCPU, old_alarm)
示例4: signal_to_string
# 需要导入模块: import signal [as 别名]
# 或者: from signal import SIGXCPU [as 别名]
def signal_to_string(self, signalNumber):
if signalNumber < 0:
signalNumber = signalNumber * -1
if signalNumber == signal.SIGINT:
return "SIGINT - Interrupt (Ctrl+C)"
elif signalNumber == signal.SIGKILL:
return "SIGKILL - Killed"
elif signalNumber == signal.SIGTERM:
return "SIGTERM - Terminated"
elif signalNumber == signal.SIGSEGV:
return "SIGSEGV - Segmentation fault"
elif signalNumber == signal.SIGHUP:
return "SIGHUP - Hang up"
elif signalNumber == signal.SIGBUS:
return "SIGBUS - Bus error"
elif signalNumber == signal.SIGILL:
return "SIGILL - Illegal instruction"
elif signalNumber == signal.SIGFPE:
return "SIGFPE - Floating point exception"
elif signalNumber == signal.SIGPIPE:
return "SIGPIPE - Broken pipe (write to pipe with no readers)"
elif signalNumber == signal.SIGABRT:
return "SIGABRT - Called abort()"
elif signalNumber == signal.SIGXFSZ:
return "SIGXFSZ - Process created files that were too big."
elif signalNumber == signal.SIGXCPU:
return "SIGXCPU - Process used too much CPU time."
else:
return "Unknown signal #" + str(signalNumber)
示例5: is_killed_by_sigkill_or_sigxcpu
# 需要导入模块: import signal [as 别名]
# 或者: from signal import SIGXCPU [as 别名]
def is_killed_by_sigkill_or_sigxcpu(status):
return status - 128 in [signal.SIGKILL, signal.SIGXCPU]
示例6: explain_signal
# 需要导入模块: import signal [as 别名]
# 或者: from signal import SIGXCPU [as 别名]
def explain_signal(signal_number):
if signal_number == signal.SIGINT:
return "Execution was interrupted"
elif signal_number == signal.SIGFPE:
return 'Execution stopped by an arithmetic error.\nOften this is caused by division (or %) by zero.'
elif signal_number == signal.SIGXCPU:
return "Execution stopped by a CPU time limit."
elif signal_number == signal.SIGXFSZ:
return "Execution stopped because too much data written."
else:
return "Execution terminated by signal %s" % signal_number