Difference between exit() and sys.exit() in Python - Stack Overflow https://stackoverflow.com/questions/6501121/difference-between-exit-and-sys-exit-in-python

def ctrl_runtime():
if time.time() - ctrl_start >= max_script_time:
s = '%s%s%s%s%s' % ('程序开始执行时间', ctrl_start, '执行时间阈值', max_script_time, '终止执行')
logging.info(s)
print(s)
sys.exit(s)


def ctrl_runtime(exit_type=''):
if time.time() - ctrl_start >= max_script_time:
s = '%s%s%s%s%s%s%s%s%s' % (
'程序开始执行时间', ctrl_start, '执行时间阈值', max_script_time, '终止执行', ' exit_type =', exit_type, ' threadID ',
threading.get_ident())
logging.info(s)
if exit_type == '':
exit(s)
elif exit_type == 'sys':
sys.exit(s)
elif exit_type == 'os':
# an integer is required
# Required argument 'status' (pos 1) not found
os._exit(-1024)

Sat, 02 Dec 2017 15:55:55 chk_url_status_ordertab_notexpire.py[line:84] INFO DB (2003, "Can't connect to MySQL server on 'rm-xyz.mysql.xyz.acom.com' (timed out)")[thread:139775600219904][process:8191]
Sat, 02 Dec 2017 15:56:31 chk_url_status_ordertab_notexpire.py[line:84] INFO DB (2003, "Can't connect to MySQL server on 'rm-xyz.mysql.xyz.acom.com' (timed out)")[thread:139775029778176][process:8191]
Sat, 02 Dec 2017 15:59:20 chk_url_status_ordertab_notexpire.py[line:185] ERROR 20171202 15:58:29 threadID 139775080134400www.abc.cn/info/35028470.html DB Exception- (2003, "Can't connect to MySQL server on 'rm-xyz.mysql.xyz.acom.com' (timed out)")[thread:139775080134400][process:8191]
Sat, 02 Dec 2017 16:04:36 chk_url_status_ordertab_notexpire.py[line:84] INFO DB (2003, "Can't connect to MySQL server on 'rm-xyz.mysql.xyz.acom.com' (timed out)")[thread:139774509692672][process:8191]
Sat, 02 Dec 2017 16:16:33 chk_url_status_ordertab_notexpire.py[line:84] INFO DB (2003, "Can't connect to MySQL server on 'rm-xyz.mysql.xyz.acom.com' (timed out)")[thread:139773964429056][process:8191]

Sat, 02 Dec 2017 18:16:53 chk_url_status_ordertab_notexpire.py[line:46] INFO 程序开始执行时间1512205940.803967执行时间阈值3600终止执行 exit_type =os threadID 140530566547200[thread:140530566547200][process:31060]

您在 /var/spool/mail/root 中有邮件

From root@hadoop1.localdomain Sat Dec 2 17:22:41 2017
Return-Path: <root@hadoop1.localdomain>
X-Original-To: root
Delivered-To: root@hadoop1.localdomain
Received: by hadoop1.localdomain (Postfix, from userid 0)
id 80D294FC113C; Sat, 2 Dec 2017 17:22:41 +0800 (CST)
From: "(Cron Daemon)" <root@hadoop1.localdomain>
To: root@hadoop1.localdomain
Subject: Cron <root@hadoop1> python /home/data/crontab_chk_url/personas/trunk/plugins/spider/chk_url_status.py &> /dev/null
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <XDG_SESSION_ID=725>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
X-Cron-Env: <LANG=zh_CN.UTF-8>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <20171202092241.80D294FC113C@hadoop1.localdomain>
Date: Sat, 2 Dec 2017 17:22:41 +0800 (CST)

/bin/sh: 行 1: 7295 已终止 python /home/data/crontab_chk_url/personas/trunk/plugins/spider/chk_url_status.py &>/dev/null

												

Difference between exit() and sys.exit() in Python的更多相关文章

  1. Python程序退出方式(sys.exit() os._exit() os.kill() os.popen(...))

    对于如何结束一个Python程序或者用Python操作去结束一个进程等,Python本身给出了好几种方法,而这些方式也存在着一些区别,对相关的几种方法看了并实践了下,同时也记录下. 参考: Pytho ...

  2. python在运行时终止执行 sys.exit

    使用sys.exit 或者exit,quit均可以退出执行 # 程序执行中,需要时停止执行 import sys if __name__ == '__main__': for ii in range( ...

  3. Python os._exit() sys.exit()

    os._exit()会直接将python程序终止,之后的所有代码都不会继续执行. sys.exit()会引发一个异常:SystemExit,如果这个异常没有被捕获,那么python解释器将会退出.如果 ...

  4. Python中 os._exit() sys.exit() exit()区别

    Python退出程序的方式有两种:os._exit(), sys.exit() 1)os._exit() 直接退出 Python程序,其后的代码也不会继续执行. 2)sys.exit() 引发一个 S ...

  5. python之 sys.exit() os._exit() exit() quit()的简单使用

    python之sys.exit() os._exit() exit() quit()的简单使用 1>sys.exit() >>> import sys>>> ...

  6. python基础之 Python os._exit() sys.exit() exit()区别

    Python退出程序的方式有两种:os._exit(), sys.exit() 1)os._exit() 直接退出 Python程序,其后的代码也不会继续执行. 2)sys.exit() 引发一个 S ...

  7. python sys.exit()函数说明

    sys.exit()函数是通过抛出异常的方式来终止进程的,也就是说如果它抛出来的异常被捕捉到了的话程序就不会退出了. #!/usr/bin/python #!coding:utf-8 import s ...

  8. python中sys.exit()和os._exit(0)退出程序

    python中退出程序的两种方法,0为默认状态,可以为空,两者均会退出当前运行的程序,os._exit(0)中的0不能省略 sys.exit(0):可以捕获SystemExit异常,然后做相应的清理工 ...

  9. Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用 optparse argparse

    Python第十天   print >> f,和fd.write()的区别    stdout的buffer  标准输入 标准输出  从控制台重定向到文件  标准错误   重定向 输出流和 ...

随机推荐

  1. HDU——3786找出直系亲属(DFS+回溯)

    找出直系亲属 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  2. spring工作机制及为什么要用?

    spring工作机制及为什么要用?1.spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作.2.DispatcherSer ...

  3. Mybatis 如何自动生成bean dao xml 配置文件 generatorconfig.xml (main()方法自动生成更快捷)

    最近项目要用到mybatis中间件,中间涉及到要对表结构生成bean,dao,和sqlconfig.xml 所以记录一下学习过程 首先是准备工作,即准备需要的jar包:我们的数据库mysql,所以驱动 ...

  4. 【loj6029】「雅礼集训 2017 Day1」市场

    题目 题意:四种操作,区间加法.区间除法(下取整).区间求最小值.区间求和. 第1.3.4个操作都是摆设,关键在于如何做区间除法. 很明显不能直接把区间的和做除法后向下取整,因为区间和可能会多凑出一个 ...

  5. HashMap构造函数有哪些

    hashMap有4个构造函数: public HashMap(int initialCapacity, float loadFactor) public HashMap(int initialCapa ...

  6. Spring boot+Spring Security 4配置整合实例

    本例所覆盖的内容: 1. 使用Spring Security管理用户身份认证.登录退出 2. 用户密码加密及验证 3. 采用数据库的方式实现Spring Security的remember-me功能 ...

  7. KVM 存储虚拟化

    KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的. Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种类型,后面会详细讨论.Volume 是 ...

  8. java私有构造函数

    1. 强调类的单例模式 public class Elvs { //公有的静态域,来说明该类只能有一个实例(实例化一次后,后面都是同一个实例) public static final Elvs INS ...

  9. cout与cerr

    cout对应于标准输出流,默认情况下是显示器.这是一个被缓冲的输出,可以被重定向. cerr对应标准错误流,用于显示错误消息.默认情况下被关联到标准输出流,但它不被缓冲,也就说错误消息可以直接发送到显 ...

  10. Linux下二进制包、源代码包、rpm包

    主要提供三种格式的mysql包:rpm格式.二进制格式.源码格式:(tar打包,gz压缩) rpm格式: libjpeg-devel-6b-33.x86_64.rpm       #rpm格式很好区分 ...