TKILL(2) Linux Programmer’s Manual TKILL(2) 名前 tkill, tgkill - スレッドにシグナルを送る 書式 int tkill(int tid, int sig); int tgkill(int tgid, int tid, int sig); 説明 tgkill() はスレッド・グループ tgid に属するスレッド ID が tid のスレッ ドにシグナル sig を送る。 (これに対し、 kill(2) は一つのプロセス (す な わ ち、スレッド・グループ) にまとめてシグナルを送るのにだけ利用できる。 kill(2) で送信されたシグナルはプロセス内の任意のスレッドに配送される。) tkill() はもう使われなくなった tgkill() の先祖である。 tkill() ではシグ ナルの送り先のスレッド ID しか指定できない。そのため、スレッドが終了 し て 、そのスレッド ID が再利用される場合に、意図しないスレッドにシグナル が送られる可能性がある。このシステムコールの使用は避けること。 tgid に -1 が指定された場合、 tgkill() は tkill() と等価である。 これらはシステムコールへの直接のインターフェースであり、スレッド・ラ イ ブラリ内部での使用を意図したものである。 返り値 成 功 した場合、0 が返される。エラーが発生した場合、-1 が返され、 errno が適切に設定される。 エラー EINVAL 指定されたスレッド ID、スレッドグループ ID、シグナルが不正であっ た。 EPERM 許可がなかった。どのような許可が必要かについては、 kill(2) を参 照のこと。 ESRCH 指定されたスレッドID (とスレッド・グループID) を持つプロセスが存 在しない。 バージョン tkill() は Linux 2.4.19 / 2.5.4 以降でサポートされ、 tgkill() は Linux 2.5.75 で追加された。 準拠 tkill() と tgkill() は Linux 固有であり、移植を想定したプログラムでは使 用すべきではない。 注意 ス レッド・グループの説明については clone(2) の CLONE_THREAD の説明を参 照のこと。 glibc はこれらのシステムコールに対するラッパー関数を提供してい な い 。 syscall(2) を使って呼び出すこと。 関連項目 clone(2), gettid(2), kill(2) Linux 2008-10-01 TKILL(2)
TKILL(2) Linux Programmer’s Manual TKILL(2) NAME tkill, tgkill - send a signal to a thread SYNOPSIS int tkill(int tid, int sig); int tgkill(int tgid, int tid, int sig); DESCRIPTION tgkill() sends the signal sig to the thread with the thread ID tid in the thread group tgid. (By contrast, kill(2) can only be used to send a signal to a process (i.e., thread group) as a whole, and the signal will be delivered to an arbitrary thread within that process.) tkill() is an obsolete predecessor to tgkill(). It only allows the target thread ID to be specified, which may result in the wrong thread being signaled if a thread terminates and its thread ID is recycled. Avoid using this system call. If tgid is specified as -1, tgkill() is equivalent to tkill(). These are the raw system call interfaces, meant for internal thread library use. RETURN VALUE On success, zero is returned. On error, -1 is returned, and errno is set appropriately. ERRORS EINVAL An invalid thread ID, thread group ID, or signal was specified. EPERM Permission denied. For the required permissions, see kill(2). ESRCH No process with the specified thread ID (and thread group ID) exists. VERSIONS tkill() is supported since Linux 2.4.19 / 2.5.4. tgkill() was added in Linux 2.5.75. CONFORMING TO tkill() and tgkill() are Linux-specific and should not be used in pro- grams that are intended to be portable. NOTES See the description of CLONE_THREAD in clone(2) for an explanation of thread groups. Glibc does not provide wrappers for these system calls; call them using syscall(2). SEE ALSO clone(2), gettid(2), kill(2) COLOPHON This page is part of release 3.22 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2008-10-01 TKILL(2)
コロナウイルスの日ごとの感染者数・死者数をグラフ化してみました。どの国が増加傾向にあり、どの国が終息に向かっているかを視覚化しています。
Copyright(C) linux-cmd.com All Rights Reserved. Author Takayuki Yukawa