shutdown

restart local computer from python

时光总嘲笑我的痴心妄想 提交于 2020-05-13 06:07:08
问题 Is there any way to make the computer a Python program is running on restart? Generic solution is good, but in particular I'm on windows. 回答1: There is no generic way of doing this, afaik. For Windows, you need to access the Win32 API. Like so: import win32api win32api.InitiateSystemShutdown() The win32api module is a part of pywin32. For linux/os x, I guess calling the "reboot" command is the easiest. import os os.system('reboot now') Or something like that. (Note to downvoters: os.system()

restart local computer from python

走远了吗. 提交于 2020-05-13 06:06:46
问题 Is there any way to make the computer a Python program is running on restart? Generic solution is good, but in particular I'm on windows. 回答1: There is no generic way of doing this, afaik. For Windows, you need to access the Win32 API. Like so: import win32api win32api.InitiateSystemShutdown() The win32api module is a part of pywin32. For linux/os x, I guess calling the "reboot" command is the easiest. import os os.system('reboot now') Or something like that. (Note to downvoters: os.system()

pthread_key_create destructor not getting called

杀马特。学长 韩版系。学妹 提交于 2020-05-12 12:06:09
问题 As per pthread_key_create man page we can associate a destructor to be called at thread shut down. My problem is that the destructor function I have registered is not being called. Gist of my code is as follows. static pthread_key_t key; static pthread_once_t tls_init_flag = PTHREAD_ONCE_INIT; void destructor(void *t) { // thread local data structure clean up code here, which is not getting called } void create_key() { pthread_key_create(&key, destructor); } // This will be called from every

常用LInux命令

情到浓时终转凉″ 提交于 2020-04-07 11:22:05
一、系统 1、centos7查看系统版本 cat /etc/centos-release 2、查看进程 ps -ef|grep java(关键字) 3、关闭进程 kill -9 PID(进程号) 5、自动解决依赖问题 yum localinstall percona-xtrabackup-24-2 .4 .14-1 .el6 .x86_64 .rpm -y 6、查看端口占用情况 lsof -i:端口号 7、关机命令 shutdown   -c:取消已经执行的 shutdown 命令;   -h:关机;   -r:重启 立刻关机: shutdown now 5分钟后关机: shutdown -h 5 20:10关机: shutdown -h 20:10 二、文件操作 1、修改文件 vi vim 2、创建文件路径(文件夹) mkdir name 3、查看当前路径的文件和文件夹清单 ls -l(查看权限、所属组、所属用户) 4、进入文件夹 cd /home/user1 cd java 进入当前路径的下一级路径 来源: https://www.cnblogs.com/rh-fernando/p/12505455.html

zabbix(一)安装服务端

隐身守侯 提交于 2020-04-06 16:57:48
一 安装zabbix 1.1. 环境检查 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@localhost ~]# uname -r 3.10.0-693.el7.x86_64 [root@localhost ~]# getenforce ------->注意不是disable的情况 Disabled [root@localhost ~]# systemctl status firewalld.service ----------->systemctl stop firewalld.service 没有关闭的情况下 ● firewalld.service - firewalld - dynamic firewall daemon   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)   Active: inactive (dead)   Docs: man:firewalld(1) 注意不是disable的情况 1、临时关闭(不用重启机器): setenforce 0 ##设置SELinux 成为permissive模式

如何优雅的关闭Java线程池

♀尐吖头ヾ 提交于 2020-04-06 08:52:02
如何优雅的关闭Java线程池 面试中经常会问到,创建一个线程池需要哪些参数啊,线程池的工作原理啊,却很少会问到线程池如何安全关闭的。 也正是因为大家不是很关注这块,即便是工作三四年的人,也会有因为线程池关闭不合理,导致应用无法正常stop的情况,还有出现一些报错的问题。 本篇就以ThreadPoolExecutor为例,来介绍下如何优雅的关闭线程池。 01 线程中断 在介绍线程池关闭之前,先介绍下Thread的interrupt。 在程序中,我们是不能随便中断一个线程的,因为这是极其不安全的操作,我们无法知道这个线程正运行在什么状态,它可能持有某把锁,强行中断可能导致锁不能释放的问题;或者线程可能在操作数据库,强行中断导致数据不一致混乱的问题。正因此,JAVA里将Thread的stop方法设置为过时,以禁止大家使用。 一个线程什么时候可以退出呢?当然只有线程自己才能知道。 所以我们这里要说的Thread的interrrupt方法,本质不是用来中断一个线程。是将线程设置一个中断状态。 当我们调用线程的interrupt方法,它有两个作用: 1、如果此线程处于阻塞状态(比如调用了wait方法,io等待),则会立马退出阻塞,并抛出InterruptedException异常,线程就可以通过捕获InterruptedException来做一定的处理,然后让线程退出。 2

Linux命令笔记

泪湿孤枕 提交于 2020-03-23 18:42:46
1. 复制文件 cp src_file dst_file 2. 切换用户 wayde@waydeserver:~$ su root Password: root@waydeserver:/home/wayde# 3. 查看当前所有进程 ps -ef 查看某进程是否存在 ps -ef | grep ps_name 4. U盘操作 查看U盘设备名称: fdisk -l mount FAT格式的U盘 mount -t vfat /dev/sdb1 /mnt/usb unmount umount /mnt/usb 5. 重启 [root@localhost ~]# shutdown -r now #重启, now是现在重启的意思 [root@localhost ~]# shutdown -r 05:30 #指定时间重启,但会占用前台终端 [root@localhost ~]# shutdown -r 05:30 & #把定义重启命令放入后台,&是后台的意思 [root@localhost ~]# shutdown -c #取消定时重启 [root@localhost ~]# shutdown -r +10 #10分钟之后重启 6. 挂载CDROM mount -t iso9660 /dev/cdrom /mnt/cdrom 7. 查看网络状态 netstat -ntlup 8.

线程池

江枫思渺然 提交于 2020-03-23 15:35:08
线程池 [TOC] 线程池概述 什么是线程池 为什么使用线程池 线程池的优势 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。 第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。但是要做到合理的利用线程池,必须对其原理了如指掌。 创建一个线程池并提交线程任务 线程池源码解析 参数认识 corePoolSize : 线程池的基本大小,当提交一个任务到线程池时,线程池会创建一个线程来执行任务,即使其他空闲的基本线程能够执行新任务也会创建线程,等到需要执行的任务数大于线程池基本大小时就不再创建。如果调用了线程池的prestartAllCoreThreads方法,线程池会提前创建并启动所有基本线程。 runnableTaskQueue:任务对列,用于保存等待执行的任务的阻塞队列。可以选择以下几个阻塞队列。 ArrayBlockingQueue:是一个基于数组结构的有界阻塞队列,此队列按 FIFO(先进先出)原则对元素进行排序。 LinkedBlockingQueue:一个基于链表结构的阻塞队列,此队列按FIFO (先进先出) 排序元素,吞吐量通常要高于ArrayBlockingQueue

马哥博客作业第一周

删除回忆录丶 提交于 2020-03-23 14:35:08
命令:输入命令、回车 提请shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来,表现为一个或多个程序。 buitin内建命令:shell自带的,而且通过某命令形式提供 外部命令在当前系统的某文件系统下有对应的可执行程序文件: which whereis 区别内部或外部命令:type COMMAND 运行命令:COMMAND [OPTIONS选项...] [ARGUMENTS参数...] 最左侧必须是命令 + [] 可有可无,可以多个 选项:用于启用或关闭命令的某个或某些功能,选项之间用空白字符隔开 短选项:-,例如 -l、-h 多个短选项可一起上使用 例如-l、-h,可写作:-lh 长选项:--,例如:--long、--human,不能合并 1,命令历史: 环境变量 HISTSIZE:命令历史记录的条数 HISTFILE:~/bash_history HISTFILEFILE:命令历史文件记录的条数 history 显示,管理命令历史。登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history history: -a 追加本次会话新执行的命令历史列表至历史文件中: -d 删除命令历史中指定的命令, -c 清空命令历史 快捷操作 !#:调用历史中第#条命令 !string:调用命令历史中最近一个以string开头的命令

Tomcat

北城以北 提交于 2020-03-23 00:07:55
1,Tomcat介绍 Tomcat是apache软件基金会项目中的一个核心项目,有apache和sun其他一些公司及个人共同开发而成的。 Tomcat服务器是一个免费的开源的web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不多的场合下被普遍使用,是开发和调试jsp程序的首选。 可以这样认为,当一台服务器配置好apache服务器以后,可以利用apache服务器来响应我们的html页面的访问请求,而tomcat是apache服务器的扩展,当你运行tomcat的时候实际上是作为一个apache独立的进程单独运行的,apache服务器为html页面提供服务的,而tomcat是运行jsp页面和servlet,另外tomcat也能具有处理html页面的功能,但是处理静态的能力没有apache处理好。 jsp:java服务器页面,是一个简化的servlet设计,在传统的html页面里面增加了java代码; jsp=“html+java代码+jsp标签” 2,tomcat组件 servlet(应用程序或者容器)是java提供的用于开发web服务器应用程序的一个组件,运行在服务器端,有servlet用于生成动态页面内容,servlet是平台读立的java类,编写一个servlet,实际上就是安装servlet规范编写一个java类。 2.1,什么是servlet?