标签: terminate

Mac OS X等效于TerminateProcess(GetCurrentProcess,0);

我正在寻找一种简单且无法捕获的方法来终止我的C++应用程序的Mac端口.在我使用的Windows中

TerminateProcess(GetCurrentProcess, 0);
Run Code Online (Sandbox Code Playgroud)

我可以在Mac OS X/XCode/GCC上使用的等效命令是什么?

c++ macos terminate

2
推荐指数
1
解决办法
2780
查看次数

终止线程,退出前运行代码

我希望能够在点击按钮时终止一个线程,例如,如果用户需要,请将该过程停止一半.显然,你可以通过在线程中设置Terminated变量来实现这一点,这意味着你可以在退出之前执行某些代码而不是突然终止.

到目前为止的代码如下: -

单击启动线程

procedure TForm1.Panel29Click(Sender: TObject);
var
cmpfil : TThread;

begin
  if (Edit3.Text <> '') AND (Edit4.Text <> '') then
  begin
    Form1.ProgressBar1.Min := 0;
    Form1.Progressbar1.Max := 30000;
    Form1.ProgressBar1.Position := 0;
    cmpfiles := TCompareFilesThread.Create();
  end;
end; 
Run Code Online (Sandbox Code Playgroud)

创建线程

constructor TCompareFilesThread.Create;
begin
  inherited Create(False);
end;
Run Code Online (Sandbox Code Playgroud)

实际线程

procedure TCompareFilesThread.Execute;
var
  forg, fpat : file;
  byteorg, bytepat : Array[0..1023] of byte;
  i,z,o : integer;
  fil1,fil2 : TFilename;
begin
  //Form1.CompareFiles(FEdit3Text, FEdit4Text, FGrid, FOp, FProg);

  begin
    fil1 := Form1.Edit3.Text;
    fil2 := Form1.Edit4.Text;
    if Form1.CRCAdlerGenFile(fil1,1) <> Form1.CRCAdlerGenFile(fil2,1) …
Run Code Online (Sandbox Code Playgroud)

delphi multithreading terminate

2
推荐指数
1
解决办法
544
查看次数

os.system('exit') 在 python 中

我的朋友在 macOS 环境中,他想os.system('exit')在他的 python 脚本末尾调用以关闭终端。它没有。这并不让我感到惊讶,但我想知道在进行此调用时 python 脚本和终端之间究竟发生了什么

在我的心理模拟中,终端应该告诉你还有正在运行的作业,但这也不会发生。

作为一个附带问题:当进程调用它时,一些不太常见的终端会关闭吗?

python terminal process exit terminate

2
推荐指数
1
解决办法
1万
查看次数

如何停止 Vibe.D 应用程序?

当库通过静态初始化程序运行时,Vibe.D 是否具有内置终止函数?我想在 vibe.d 抛出异常时终止应用程序,例如打开文件。

我有一个服务器正在使用该listenHTTP功能进行侦听。

exception-handling d terminate vibed

2
推荐指数
1
解决办法
525
查看次数

什么是Haskell程序的退出代码的示例实现,它返回到默认的Prelude> screen GHC 7.8.3

我是haskell编程的新手.我想要一个示例代码,说明如何通过输入命令(例如QUIT)退出主程序并返回默认的Prelude>屏幕.我正在使用GHC 7.8.3解释器.还请提一下我需要导入哪些模块(如果有的话).我一直在寻找并尝试不同的东西,但似乎没有任何工作.真的很想知道如何做到这一点.非常感谢你提前

haskell exit-code exit terminate

2
推荐指数
2
解决办法
3524
查看次数

终止一系列进程的最可靠方法

如果我们假设:在 Linux 中终止一系列进程的最佳方法是什么:

  1. 在我们开始清理之前,家族中的任意进程都可能被杀死/终止;因此,如果子进程不终止,它们的 PPID 将为 1
  2. 进程可以更改进程组

我正在研究的特定场景是 Bash,但技术越通用越好。

linux bash process terminate

2
推荐指数
1
解决办法
2715
查看次数

PowerShell不会终止挂起的进程

我有一个场景,由于Oracle数据库,每个星期一早上都有一个进程被卡住,所以我尝试创建一个PowerShell脚本来运行每个星期一,但无论是否收到错误,该过程仍然存在.

我试图用来"杀死"的那条线是:

Get-Process -Name ez0* -ComputerName $server | Stop-Process -Force
Run Code Online (Sandbox Code Playgroud)

尝试在本地做这个没有-ComputerName.

我没有从这条线上得到任何错误,无论-Force它是否只是执行并继续前进.

只是做Get-Process工作,我可以看到它,但我不能用PowerShell结束它.经过多次尝试,我远程登录到服务器,只需右键单击该过程并选择"结束任务"即可.

这是一个奇怪的过程,因为它是初始8中的一个(基于核心),当您停止服务时,除了一个进程之外的所有进程都将被删除,除了挂起的进程.

powershell process terminate

2
推荐指数
1
解决办法
4051
查看次数

Delphi应用程序运行

Application.Run过程调用一个处理Windows消息的无限循环:

  repeat
    try
      HandleMessage;
    except
      HandleException(Self);
    end;
  until Terminated;
Run Code Online (Sandbox Code Playgroud)

Terminated只能通过Application.Terminate发送PostQuitMesage的过程将该属性设置为true .我想更改消息处理循环,以便我可以使用全局变量直接停止它(不使用消息队列):

var MyTerminated:Boolean
....
  repeat
    try
      HandleMessage;
    except
      HandleException(Self);
    end;
  until Terminated or MyTerminated;
Run Code Online (Sandbox Code Playgroud)

问题是,是否可以使程序使用您自己的Application.Run版本?

delphi terminate

2
推荐指数
1
解决办法
902
查看次数

关于set_terminate使用的问题

我有下面的例子。(我的实际项目是一个多线程项目,我为所有项目设置了终止处理程序。)我这里有几个问题。

  1. 我的终止处理程序没有做任何花哨的事情。它只是说发生了错误并退出。我读到添加处理程序是一个很好的做法。为什么会这样?在这种情况下我真的需要吗?

  2. 如果我没有处理程序,我会得到抛出的异常类型。terminate called after throwing an instance of 'char const*'但是当我使用处理程序时,我无法获取它。即使我使用 current_exception,我也无法获取异常的类型。(这里显然是 char* 但在我的情况下它可能是任何东西,所以我无法正确捕获。即使我使用 catch{...},消息和类型也会丢失)。无论如何都可以得到消息。如果不是消息,至少我可以获得抛出的异常的类型?

// set_terminate example
#include <iostream>
#include <exception>
#include <cstdlib>
using namespace std;

void myterminate () {
  cerr << "terminate handler called\n";
  abort();  // forces abnormal termination
}

int main (void) {
  //set_terminate (myterminate);
  throw "TEST";  // unhandled exception: calls terminate handler
  return 0;

Run Code Online (Sandbox Code Playgroud)

exception terminate throw terminate-handler c++11

2
推荐指数
1
解决办法
2589
查看次数

Linux/POSIX 等效于 C++ 代码中的 Win32 API TerminateProcess

在 Linux/POSIX 上相当于

TerminateProcess(GetCurrentProcess(), 0)
Run Code Online (Sandbox Code Playgroud)

我希望能够突然、无序地终止程序,无论我是否在线程中。我不关心析构函数、退出处理程序或优雅终止,我只想完全关闭/终止程序。

我必须包含哪些系统库以及必须使用哪些函数/参数?

c++ linux posix exit terminate

2
推荐指数
1
解决办法
70
查看次数