質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

SSH

SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

例外処理

例外処理(Exception handling)とは、プログラム実行中に異常が発生した場合、通常フローから外れ、例外として別の処理を行うようにデザインされたプログラミング言語構造です。

Q&A

0回答

1595閲覧

X Window System(X11)で発生するエラーをプログラム内でハンドリングしたい

syohei097050

総合スコア0

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

SSH

SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

例外処理

例外処理(Exception handling)とは、プログラム実行中に異常が発生した場合、通常フローから外れ、例外として別の処理を行うようにデザインされたプログラミング言語構造です。

0グッド

1クリップ

投稿2020/11/02 14:17

前提・実現したいこと

X11で発生するエラーをプログラム内でハンドリングしたいのですが、
方法が分からず、ご教授いただきたいです。

###実行環境

ローカルホスト1:Windows10
ローカルホスト2:Windows10
リモートホスト:CentOS7
Xサーバ:VcXsrv
イメージ説明

あまりない実行環境かもしれませんが、ローカルホスト1からリモートホストにSSH接続を行い、
そこで実行したプログラムが表示するウィンドウをローカルホスト2に表示しております。
ウィンドウが表示された状態でリモートホストとローカルホスト2間のSSH接続が切れた場合に以下のエラーメッセージが発生します。

発生している問題・エラーメッセージ

Gdk-Message: 20:51:41.044: viewr: Fatal IO error 11 (リソースが一時的に利用できません) on X server localhost:10.0

該当のソースコード

※実際のコードとは異なりますが、以下のサンプルコードでも同様のエラーが発生します。

C++

1#include <opencv2/opencv.hpp> 2#include <iostream> 3 4int main(int argc, const char* argv[]){ 5 cv::Mat redImg(cv::Size(320, 240), CV_8UC3, cv::Scalar(0, 0, 255)); 6 cv::namedWindow("red", cv::WINDOW_AUTOSIZE); 7 8 cv::imshow("red", redImg); 9 cv::waitKey(0); 10 11 cv::destroyAllWindows(); 12 13 return 0; 14}

調査したこと

こちらのページが私のやりたいことに一番近いと思っているのですが、
前述したようなOpenCVでウィンドウを表示するだけのようなプログラムの場合、
X11ライブラリを使ったエラーハンドリングをどのように行えばいいか分からず、詰まってしまっています。
例えば、main文の中で例外処理のような形でエラーメッセージを処理することは可能なのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

syohei097050

2020/11/04 15:05

アドバイスありがとうございます。 試してはみたのですがcatchできませんでした。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問