草庐IT

python进程间通信

全部标签

python - 什么操作系统中断来自关闭终端选项卡?

我假设关闭终端窗口(或嵌入在IDE中的终端窗口)会向终端中运行的进程发送某种操作系统中断信号。我怎样才能找出这个信号是什么?我正在寻找一种方法来捕获中断,运行一些清理,然后中止。我正在使用Python和Windows。 最佳答案 您正在寻找SIGHUPSIGHUPTheSIGHUPsignalissenttoaprocesswhenitscontrollingterminalisclosed.Itwasoriginallydesignedtonotifytheprocessofaseriallinedrop(ahangup).Inm

windows - 在 Windows 上使用文件关闭进程

我想关闭所有在Windows上使用文件的程序。我有一个我在Linux上想要的例子:pids=`lsof|grep$fic|grep-v"grep"|tr-d'\t'|cut-d""-f2`谢谢! 最佳答案 请将标签从bash更改为批处理并安装Handle这样就解决了目的 关于windows-在Windows上使用文件关闭进程,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2321

Python - 我们必须在 Windows 目录的每一步中都有一个 __init__.py 吗?

假设我们希望在Windows上和Python2.7通过键入命令并点击来从GUI运行命令输入或右键单击Python文件并选择使用IDLE编辑,当IDLE在IDLE中弹出时按F5。现在假设我们有一个简单的文件目录,如C:\A\B\C\D并且在folderD中我们要运行example.py。我们想通过某种方式来做到这一点:通过右键单击打开它并选择使用IDLE编辑并按F5或通过选取每一行代码并在PythonGUI上输入她假设我们键入命令:fromC.Dimportexample请记住,C和D是文件夹,在文件夹D中,我们有example.py。我们还在PYTHONPATH中设置了环境变量:C:\

java - 如何通过java程序获取exe运行的进程id

我正在通过javaruntimeapi运行一个exeProcessprocess=runTime.exec("cmd.exe/cstartabc.exe"+Id,null,newFile("D:/My"));并像这样使用jna检索进程ID-Kernel32.INSTANCE.GetProcessId((Long)f.get(process));但返回的进程ID不是abc.exe而是cmd.exe.....我需要abc.exe的进程ID。不知道如何获得任何人都可以帮助。 最佳答案 process是java.lang.Process类型

python - 按下时创建一个按钮在python 3.3的输入框中打印该按钮上的数字

我想制作一个写有“2”的按钮....现在当任何人点击它时,它会在输入框中显示数字“2”...错误是:在点击之前,已经在输入框中显示'2'所以请帮我消除这个错误这是我的程序fromtkinterimport*root=Tk()defadd(x):e1=Entry(root)e1.insert(INSERT,x)e1.pack()a=Button(root,text='2',command=add(2))a.pack()root.mainloop() 最佳答案 传递一个函数(在下面的代码中使用了lambda)而不是函数的返回值。from

python - shutil.move() 和 copy() 的问题

我在Stackoverflow上阅读了几篇关于shutil.move、复制和重命名的文章。使用这些引用,我似乎仍然无法在使用Python2.7的Windows7Professional环境下无错误地执行此脚本。我在这里做错了什么?importshutilshutil.move('C:/Data/Download/Somefile.txt.zip','C:/Data/Archive/')错误:没有那个文件或目录:C:/Data/Download/Somefile.txt.zip我试过//、\和其他路径都没有结果。我在这里缺少什么?这是我使用的引用脚本:importshutilimport

python - 在 Windows psutil 中查找进程是否正在运行

process_name="CCC.exe"forprocinpsutil.process_iter():ifproc.name==process_name:print("have")else:print("Donthave")我知道CCC.exe正在运行。我用2.7和3.4python尝试了这段代码我也导入了psutil。然而,该过程在那里,但它正在打印“没有”。 最佳答案 name是proc的一个方法:process_name="CCC.exe"forprocinpsutil.process_iter():ifproc.name

windows - 是否需要 FlushFileBuffers 才能跨多个进程同步文件数据?

我有一个被许多进程读/写的文件,它们使用互斥锁来序列化读/写。是否需要在ProcessA中的WriteFile之后调用FlushFileBuffers以便ProcessB可以看到这些更改?或者ProcessB是否可以保证看到ProcessA所做的更改,假设该文件的操作系统磁盘缓存在所有进程之间共享?调用WriteFile后,我没有调用文件上的CloseHandle,我让它在所有进程中保持打开状态,但它们有FILE_SHARE_READ和FILE_SHARE_WRITE标志传递给CreateFile。这是跨WindowsXP到Windows8.1工作所必需的-我发现调用FlushFile

python - 使用 tkinter 获取命令窗口输出以显示在小部件中

快速项目总结:使用Tkinter制作一个python小部件,显示来自多个json和txt文件的数据。需要在Windows中工作。我在哪里:json文件一切顺利。但是我遇到了txt文件的问题。我可以使用以下代码从必要的文件中解析出我需要的信息:fromTkinterimport*importreresults=open("sample_results.txt","r")forlineinresults:ifre.match("(.*)test(.*)",line):printlineifre.match("(.*)number(.*)",line):printlineifre.match

python - 为什么此命令无法打印 Python 命令的正确退出代码?

在cmd.exe窗口中,当我运行python-c"exit(12)"然后运行​​echo%errorlevel%时,它打印12。之后,当我运行python-c"exit(13)"&echo%errorlevel%时,它会打印12。为什么第二个命令无法打印正确的退出代码? 最佳答案 %errorlevel%的替换发生在您运行命令时。当您按下“输入”键时,它反射(reflect)了%errorlevel%的值。举个例子:>setfoo=foo>echo%foo%foo>setfoo=bar&echo%foo%foo>echo%foo%b