ProcessingでoscP5ライブラリを使用しています。私は既に oscP5 の javadoc を調べ、ソースを参照しましたが、わかりません。
次のようなデバッグ情報を取得すると: ### new Client @ netP5.TcpClient@2515
値2515は何を表していますか? クライアントが使用しているポートではないことはわかっています。クライアントの一意のIDですか?TcpClient クラスでアクセスできる変数ですか?
ありがとう。
ProcessingでoscP5ライブラリを使用しています。私は既に oscP5 の javadoc を調べ、ソースを参照しましたが、わかりません。
次のようなデバッグ情報を取得すると: ### new Client @ netP5.TcpClient@2515
値2515は何を表していますか? クライアントが使用しているポートではないことはわかっています。クライアントの一意のIDですか?TcpClient クラスでアクセスできる変数ですか?
ありがとう。
これは、メモリ内のオブジェクト (TcpClient) アドレスです。ソース コードは src/netP5/AbstractTcpServer.java にあります。
TcpClient t = new TcpClient(this, _myServerSocket.accept(),
_myTcpPacketListener, _myPort, _myMode);
if (NetP5.DEBUG) {
System.out.println("### new Client @ " + t);
}
これは、番号が TcpClient の文字列表現であることを意味します。これを返すために何も実装されていないため、デフォルトの動作: オブジェクト アドレスです。次の例に示すように、この TcpClient オブジェクトとそのメンバーにアクセスできます。ここでは簡単にするために、clients リストの最初のオブジェクトを見ていると仮定します。
if (oscP5tcpServer.tcpServer().getClients().length>0) {
TcpClient tcpClient = (TcpClient)oscP5tcpServer.tcpServer().getClient(0);
print (tcpClient); // address - same as your printed output
print (tcpClient.netAddress()); // string with "ip:port"
print (tcpClient.socket()); // Socket object
}
興味深い情報のほとんどは、基本オブジェクト AbstractTcpClient に含まれていることに注意してください (例に示すように)。