tools
読み取り中…
検索中…
一致する文字列を見つけられません
PConnect< T > クラステンプレート

名前付き共有メモリを介してプロセス間通信を行うテンプレートクラス [詳解]

#include <connect.h>

公開メンバ関数

 PConnect (const std::string &memName, int8_t CREATEMODE___IMiNaSi)
 共有メモリを新規作成するコンストラクタ(作成モード)
 PConnect (const std::string &memName)
 既存の共有メモリに接続するコンストラクタ(オープンモード)
void write (const T &data)
 共有メモリにデータを書き込む
read () const
 共有メモリからデータを読み込む
 ~PConnect ()
 デストラクタ。マッピングとハンドルを解放する

詳解

template<typename T>
class PConnect< T >

名前付き共有メモリを介してプロセス間通信を行うテンプレートクラス

テンプレート引数
T共有するデータの型

2 つのコンストラクタで「作成モード」と「オープンモード」を区別します:

// プロセスA(作成側)
PConnect<int> server("MySharedMem", 0);
server.write(42);
// プロセスB(接続側)
PConnect<int> client("MySharedMem");
int val = client.read(); // 42
PConnect(const std::string &memName, int8_t CREATEMODE___IMiNaSi)
共有メモリを新規作成するコンストラクタ(作成モード)
Definition connect.h:50

connect.h37 行目に定義があります。

構築子と解体子

◆ PConnect() [1/2]

template<typename T>
PConnect< T >::PConnect ( const std::string & memName,
int8_t CREATEMODE___IMiNaSi )
inline

共有メモリを新規作成するコンストラクタ(作成モード)

引数
memName共有メモリの名前("Global\\" が自動付加される)
CREATEMODE___IMiNaSi作成モードであることを示すダミー引数(値は使用しない)
例外
std::runtime_error共有メモリの作成またはマッピングに失敗した場合

connect.h50 行目に定義があります。

◆ PConnect() [2/2]

template<typename T>
PConnect< T >::PConnect ( const std::string & memName)
inline

既存の共有メモリに接続するコンストラクタ(オープンモード)

引数
memName接続する共有メモリの名前("Global\\" が自動付加される)
例外
std::runtime_error共有メモリのオープンまたはマッピングに失敗した場合

connect.h89 行目に定義があります。

◆ ~PConnect()

template<typename T>
PConnect< T >::~PConnect ( )
inline

デストラクタ。マッピングとハンドルを解放する

connect.h128 行目に定義があります。

関数詳解

◆ read()

template<typename T>
T PConnect< T >::read ( ) const
inline

共有メモリからデータを読み込む

戻り値
共有メモリの現在値(型 T のコピー)
例外
std::runtime_errorマッピングポインタが無効な場合

connect.h118 行目に定義があります。

◆ write()

template<typename T>
void PConnect< T >::write ( const T & data)
inline

共有メモリにデータを書き込む

引数
data書き込むデータ(型 T)
例外
std::runtime_errorマッピングポインタが無効な場合

connect.h106 行目に定義があります。


このクラス詳解は次のファイルから抽出されました: