NET_Address * NET_ResolveHostname(const char *host);
| const char * | host | 解決するホスト名 |
SDL_netは人が読めるホスト名(www.libsdl.orgのような)を扱わず, コンピュータが読めるアドレスを扱う. この関数はその変換を行う. この処理がアドレスの「解決」である.
この関数でIPアドレス文字列("159.203.69.7"のような)をNET_Addressに変換することもできる.
アドレスの解決は, ライブラリが必要な成功を得るためにインターネット上のサーバに問い合わせる必要があり時間がかかる(そしてその後に失敗する)可能性があるため, 非同期な操作なので注意すること. この関数はブロックしない. この関数はNULL(致命的な失敗)または未解消のNET_Addressのどちらかを戻す. アドレスが解決するまでは使用できない.
解決の完了までブロックしたい場合は, NET_WaitUntilResolved()を使うことができる. これを使わない場合は, NET_GetAddressStatus()でブロックせずにチェックすることができる.
戻されたNET_Addressが不要になったならば, NET_UnrefAddress()で破棄すること. 非同期の解決に失敗した場合でも, これを行う必要がある.
この関数はどのスレッドからも安全に呼べる.