Soumettre la recherche
Mettre en ligne
Pythonのシグナル処理
•
Télécharger en tant que PPTX, PDF
•
6 j'aime
•
12,608 vues
Atsuo Ishimoto
Suivre
2011/10/15 Python Developers Festa 2011/10
Lire moins
Lire la suite
Signaler
Partager
Signaler
Partager
1 sur 11
Télécharger maintenant
Recommandé
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
Atsushi KOMIYA
学習時に使ってはいないデータの混入「リーケージを避ける」
学習時に使ってはいないデータの混入「リーケージを避ける」
西岡 賢一郎
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
Yoshifumi Kawai
【メタサーベイ】Video Transformer
【メタサーベイ】Video Transformer
cvpaper. challenge
.NET Core 3.0時代のメモリ管理
.NET Core 3.0時代のメモリ管理
KageShiron
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
Recommandé
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
Atsushi KOMIYA
学習時に使ってはいないデータの混入「リーケージを避ける」
学習時に使ってはいないデータの混入「リーケージを避ける」
西岡 賢一郎
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
Yoshifumi Kawai
【メタサーベイ】Video Transformer
【メタサーベイ】Video Transformer
cvpaper. challenge
.NET Core 3.0時代のメモリ管理
.NET Core 3.0時代のメモリ管理
KageShiron
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす
Akihiro Suda
基礎線形代数講座
基礎線形代数講座
SEGADevTech
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
Takahiro Kubo
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
Hideo Terada
自然言語処理における深層学習を用いた予測の不確実性 - Predictive Uncertainty in NLP -
自然言語処理における深層学習を用いた予測の不確実性 - Predictive Uncertainty in NLP -
tmtm otm
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
Takahiro Kubo
[DL Hacks]Visdomを使ったデータ可視化
[DL Hacks]Visdomを使ったデータ可視化
Deep Learning JP
ディープラーニングのフレームワークと特許戦争
ディープラーニングのフレームワークと特許戦争
Yosuke Shinya
冬のLock free祭り safe
冬のLock free祭り safe
Kumazaki Hiroki
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
Takahiro Miyaura
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
Hideki Tsunashima
PyCUDAの紹介
PyCUDAの紹介
Yosuke Onoue
目grep入門 +解説
目grep入門 +解説
murachue
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
Mr. Vengineer
ゼロから始める転移学習
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
takaya imai
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
京大 マイコンクラブ
Vision and Language(メタサーベイ )
Vision and Language(メタサーベイ )
cvpaper. challenge
PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミング
Ransui Iso
Pythonによる非同期プログラミング入門
Pythonによる非同期プログラミング入門
Hironori Sekine
Contenu connexe
Tendances
root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす
Akihiro Suda
基礎線形代数講座
基礎線形代数講座
SEGADevTech
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
Takahiro Kubo
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
Hideo Terada
自然言語処理における深層学習を用いた予測の不確実性 - Predictive Uncertainty in NLP -
自然言語処理における深層学習を用いた予測の不確実性 - Predictive Uncertainty in NLP -
tmtm otm
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
Takahiro Kubo
[DL Hacks]Visdomを使ったデータ可視化
[DL Hacks]Visdomを使ったデータ可視化
Deep Learning JP
ディープラーニングのフレームワークと特許戦争
ディープラーニングのフレームワークと特許戦争
Yosuke Shinya
冬のLock free祭り safe
冬のLock free祭り safe
Kumazaki Hiroki
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
Takahiro Miyaura
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
Hideki Tsunashima
PyCUDAの紹介
PyCUDAの紹介
Yosuke Onoue
目grep入門 +解説
目grep入門 +解説
murachue
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
Mr. Vengineer
ゼロから始める転移学習
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
takaya imai
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
京大 マイコンクラブ
Vision and Language(メタサーベイ )
Vision and Language(メタサーベイ )
cvpaper. challenge
Tendances
(20)
root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす
基礎線形代数講座
基礎線形代数講座
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
自然言語処理における深層学習を用いた予測の不確実性 - Predictive Uncertainty in NLP -
自然言語処理における深層学習を用いた予測の不確実性 - Predictive Uncertainty in NLP -
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
[DL Hacks]Visdomを使ったデータ可視化
[DL Hacks]Visdomを使ったデータ可視化
ディープラーニングのフレームワークと特許戦争
ディープラーニングのフレームワークと特許戦争
冬のLock free祭り safe
冬のLock free祭り safe
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
PyCUDAの紹介
PyCUDAの紹介
目grep入門 +解説
目grep入門 +解説
できる!並列・並行プログラミング
できる!並列・並行プログラミング
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
ゼロから始める転移学習
ゼロから始める転移学習
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
Vision and Language(メタサーベイ )
Vision and Language(メタサーベイ )
Similaire à Pythonのシグナル処理
PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミング
Ransui Iso
Pythonによる非同期プログラミング入門
Pythonによる非同期プログラミング入門
Hironori Sekine
signal の話 或いは Zend Signals とは何か
signal の話 或いは Zend Signals とは何か
do_aki
StackExchangeで見たシステムプログラミング案件
StackExchangeで見たシステムプログラミング案件
yaegashi
HoloLensハンズオン:AirTap & SpatialMapping編
HoloLensハンズオン:AirTap & SpatialMapping編
Takashi Yoshinaga
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Naoki Matsumoto
GoによるiOSアプリの開発
GoによるiOSアプリの開発
Takuya Ueda
Python physicalcomputing
Python physicalcomputing
Noboru Irieda
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
Hidemasa Togashi
Rtミドルウェア講習会 第1部資料
Rtミドルウェア講習会 第1部資料
openrtm
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 hamanako
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 hamanako
Kazuo Asano (@kazuo_asa)
po-1. プログラミング入門
po-1. プログラミング入門
kunihikokaneko1
Similaire à Pythonのシグナル処理
(13)
PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミング
Pythonによる非同期プログラミング入門
Pythonによる非同期プログラミング入門
signal の話 或いは Zend Signals とは何か
signal の話 或いは Zend Signals とは何か
StackExchangeで見たシステムプログラミング案件
StackExchangeで見たシステムプログラミング案件
HoloLensハンズオン:AirTap & SpatialMapping編
HoloLensハンズオン:AirTap & SpatialMapping編
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
GoによるiOSアプリの開発
GoによるiOSアプリの開発
Python physicalcomputing
Python physicalcomputing
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
Rtミドルウェア講習会 第1部資料
Rtミドルウェア講習会 第1部資料
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 hamanako
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 hamanako
po-1. プログラミング入門
po-1. プログラミング入門
Plus de Atsuo Ishimoto
Pythonの紹介
Pythonの紹介
Atsuo Ishimoto
NumPyの歴史とPythonの並行処理【PyData.tokyo One-day Conference 2018】
NumPyの歴史とPythonの並行処理【PyData.tokyo One-day Conference 2018】
Atsuo Ishimoto
行列演算とPythonの言語デザイン
行列演算とPythonの言語デザイン
Atsuo Ishimoto
Django pgroonga
Django pgroonga
Atsuo Ishimoto
Python 3.6 リリースパーティー 発表資料
Python 3.6 リリースパーティー 発表資料
Atsuo Ishimoto
tse - Pythonによるテキスト整形ユーティリティ
tse - Pythonによるテキスト整形ユーティリティ
Atsuo Ishimoto
python.jpの使い方
python.jpの使い方
Atsuo Ishimoto
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築
Atsuo Ishimoto
Introduction to cython
Introduction to cython
Atsuo Ishimoto
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
Atsuo Ishimoto
Python3と向かい合ってみる
Python3と向かい合ってみる
Atsuo Ishimoto
Pythonのガベージコレクション
Pythonのガベージコレクション
Atsuo Ishimoto
Slide at PyCon mini JP on 2011/1/29
Slide at PyCon mini JP on 2011/1/29
Atsuo Ishimoto
String representation in py3k
String representation in py3k
Atsuo Ishimoto
Plus de Atsuo Ishimoto
(14)
Pythonの紹介
Pythonの紹介
NumPyの歴史とPythonの並行処理【PyData.tokyo One-day Conference 2018】
NumPyの歴史とPythonの並行処理【PyData.tokyo One-day Conference 2018】
行列演算とPythonの言語デザイン
行列演算とPythonの言語デザイン
Django pgroonga
Django pgroonga
Python 3.6 リリースパーティー 発表資料
Python 3.6 リリースパーティー 発表資料
tse - Pythonによるテキスト整形ユーティリティ
tse - Pythonによるテキスト整形ユーティリティ
python.jpの使い方
python.jpの使い方
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築
Introduction to cython
Introduction to cython
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
Python3と向かい合ってみる
Python3と向かい合ってみる
Pythonのガベージコレクション
Pythonのガベージコレクション
Slide at PyCon mini JP on 2011/1/29
Slide at PyCon mini JP on 2011/1/29
String representation in py3k
String representation in py3k
Pythonのシグナル処理
1.
Pythonのシグナル処理 Python Developers
Festa 2011/10 2011/10/15 AtsuoIshimoto
2.
お前誰よ 石本敦夫@無職 改め@フリータ
Twitter: @atsuoishimoto
3.
シグナルって? プロセス間非同期通信の一種 Control+Cで実行中のプロセスが終了するのも、シグナルの仕事
POSIXで規定されてる->Unix/Windows等で利用可能
4.
Ctrl+Cを押しても止まらないプログラム Cで書くと void
sigint_handler(intsigno) { printf("received SIGINT"); } void main() { signal(SIGINT, sigint_handler); for (;;) { sleep(1); } }
5.
シグナルの使い方 Pythonでは defsigint_handler(signo,
frame): print "received SIGINT" import signal signal.signal(signal.SIGINT, sigint_handler) while True: signal.pause()
6.
ハンドラの起動まで C言語版 シグナル通知
プロセス シグナルハンドラ (例:sigint_handler)
7.
ハンドラの起動まで Pythonでは Pythonプロセス
Pythonスクリプトを実行 シグナル通知 シグナル受信フラグをセット 時々シグナル受信フラグをチェック シグナル有り シグナルハンドラを実行 チェック周期は、sys.getcheckinterval()で決まる
8.
シグナルハンドラの起動タイミング シグナルハンドラの起動は非同期 Pythonのバイトコードを一定数実行したとき
C API の PyErr_CheckSignals()を呼び出したとき ファイルIO処理中に時々呼び出されたりする シグナル発生からハンドラ起動まで、すっごい時間がかかるときがある。 sys.setcheckinterval() 時間のかかるC拡張(正規表現検索など)
9.
Signalとスレッド:混ぜるな危険 SIGTERMを受け取るまで待ち合わせする処理 この処理は、ev.wait()から先に進まない。
Event.wait()はPyErr_CheckSignals()を呼び出さないため、シグナルハンドラが呼び出されることはない。 ev = threading.Event() def handle_term(signo, frame): ev.set() signal.signal(signal.SIGTERM, handle) ev.wait()
10.
システムコールの割り込み void sigint_handler(intsigno)
{ printf("received SIGINT"); } void main() { signal(SIGINT, sigint_handler); while (1) { read(0, 1000, buf); } } ishimoto@ubuntu:~$ ./a.out adfkn^C^C^C^C^C^C^C^C^C^C^C^C^C^C Ctrl+Cを押してもSIGINTが発生しない
11.
システムコールの割り込み import sys,
signal def sigint_handler(signo, frame): print "received SIGINT" signal.signal(signal.SIGINT, sigint_handler) while True: sys.stdin.read(100) ishimoto@ubuntu:~$ python a.py sadf ^Creceived SIGINT ^Creceived SIGINT Traceback (most recent call last): File "a.py", line 9, in <module> sys.stdin.read(100) IOError: [Errno 4] Interrupted system call SIGINTが発生する!
Télécharger maintenant