Skip to main content

異常終了(その他の方法)

Python

  • raise Exception('xx') : 1

Swift

  • fatalError("message") : 133
  • precondition(isOK, "messagge") : 133
  • assert(isOK) : 133

PHP

  • throw new Error(); : 255

Bash

  • -e オプションでエラーコマンドが1個でもあったら即終了
  • kill -6 <PID> で外から落とす (core dump)
bash
#!/bin/bash -e

echo "a"
ls /no/such/file
echo "b" # => not pass

Ruby

  • raise Exception : 1

C++

  • assert(false) : 134
  • abort() : 134
  • raise(SIGABRT) : 134

abort の場合は core dump?

cpp
#include <cassert>
assert(result_is_ok);
cpp
#include <signal.h>
raise(SIGABRT);