目次 - SDL_net 3.0 - NET_ResolveHostname

NET_ResolveHostname

人が読めるホスト名を解決する

ヘッダ

SDL3_net/SDL_net.h

構文

NET_Address * NET_ResolveHostname(const char *host);

引数

const char *host解決するホスト名

戻り値

(NET_Address *) 成功のとき新しいNET_Addressを戻す. エラーのときNULLを戻す. SDL_GetError()を呼んで詳細を知ることができる.

詳細

SDL_netは人が読めるホスト名(www.libsdl.orgのような)を扱わず, コンピュータが読めるアドレスを扱う. この関数はその変換を行う. この処理がアドレスの「解決」である.

この関数でIPアドレス文字列("159.203.69.7"のような)をNET_Addressに変換することもできる.

アドレスの解決は, ライブラリが必要な成功を得るためにインターネット上のサーバに問い合わせる必要があり時間がかかる(そしてその後に失敗する)可能性があるため, 非同期な操作なので注意すること. この関数はブロックしない. この関数はNULL(致命的な失敗)または未解消のNET_Addressのどちらかを戻す. アドレスが解決するまでは使用できない.

解決の完了までブロックしたい場合は, NET_WaitUntilResolved()を使うことができる. これを使わない場合は, NET_GetAddressStatus()でブロックせずにチェックすることができる.

戻されたNET_Addressが不要になったならば, NET_UnrefAddress()で破棄すること. 非同期の解決に失敗した場合でも, これを行う必要がある.

スレッドセーフ

この関数はどのスレッドからも安全に呼べる.

バージョン

SDL_net 3.0.0以降

関連項目

SDL Wikiへのリンク

SDL3_net/NET_ResolveHostname