Socket.GetSocketOptionとは? わかりやすく解説

Socket.GetSocketOption メソッド (SocketOptionLevel, SocketOptionName, Byte[])

指定した Socket オプション設定バイト配列として返します

名前空間: System.Net.Sockets
アセンブリ: System (system.dll 内)
構文構文

Public Sub GetSocketOption ( _
    optionLevel As SocketOptionLevel, _
    optionName As SocketOptionName, _
    optionValue As Byte() _
)
Dim instance As Socket
Dim optionLevel As SocketOptionLevel
Dim optionName As SocketOptionName
Dim optionValue As Byte()

instance.GetSocketOption(optionLevel, optionName, optionValue)
public void GetSocketOption (
    SocketOptionLevel optionLevel,
    SocketOptionName optionName,
    byte[] optionValue
)
public:
void GetSocketOption (
    SocketOptionLevel optionLevel, 
    SocketOptionName optionName, 
    array<unsigned char>^ optionValue
)
public void GetSocketOption (
    SocketOptionLevel optionLevel, 
    SocketOptionName optionName, 
    byte[] optionValue
)
public function GetSocketOption (
    optionLevel : SocketOptionLevel, 
    optionName : SocketOptionName, 
    optionValue : byte[]
)

パラメータ

optionLevel

SocketOptionLevel 値の 1 つ

optionName

SocketOptionName 値の 1 つ

optionValue

オプション設定受信する Byte 型の配列

例外例外
解説解説
使用例使用例

LingerOption タイムアウト値と Send タイムアウト値を取得しコンソール表示するコード例次に示します

    Console.WriteLine(("This application will timeout if Send does
 not return within " + Encoding.ASCII.GetString(s.GetSocketOption(SocketOptionLevel.Socket,
 SocketOptionName.SendTimeout, 4))))
    ' blocks until send returns
    Dim i As Integer = s.Send(msg)

    ' blocks until read returns
    Dim bytes(1024) As Byte
    s.Receive(bytes)

    'Display to the screen
    Console.WriteLine(Encoding.ASCII.GetString(bytes))
    s.Shutdown(SocketShutdown.Both)

    Console.WriteLine(("If data remains to be sent, this application
 will stay open for " + CType(s.GetSocketOption(SocketOptionLevel.Socket,
 SocketOptionName.Linger), LingerOption).LingerTime.ToString()))
    s.Close()
End Sub 'SetSocketOptions
Console.WriteLine ("This application will timeout if Send
 does not return within " + Encoding.ASCII.GetString (s.GetSocketOption
 (SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 4)));

// blocks until send returns
int i = s.Send (msg);

// blocks until read returns
byte[] bytes = new byte[1024];

s.Receive (bytes);

//Display to the screen
Console.WriteLine (Encoding.ASCII.GetString (bytes));
s.Shutdown (SocketShutdown.Both);
Console.WriteLine ("If data remains to be sent, this application
 will stay open for " + ((LingerOption)s.GetSocketOption
 (SocketOptionLevel.Socket, SocketOptionName.Linger)).LingerTime.ToString ());
s.Close ();
Console::Write(  "This application will timeout if Send does
 not return within " );
Console::WriteLine( Encoding::ASCII->GetString( s->GetSocketOption( SocketOptionLevel::Socket,
 SocketOptionName::SendTimeout, 4 ) ) );

// Blocks until send returns.
int i = s->Send( msg );

// Blocks until read returns.
array<Byte>^ bytes = gcnew array<Byte>(1024);

s->Receive( bytes );

//Displays to the screen.
Console::WriteLine( Encoding::ASCII->GetString( bytes ) );
s->Shutdown( SocketShutdown::Both );
Console::Write(  "If data remains to be sent, this application
 will stay open for " );
Console::WriteLine( safe_cast<LingerOption^>(s->GetSocketOption( SocketOptionLevel::Socket,
 SocketOptionName::Linger ))->LingerTime.ToString() );
s->Close();
    Console.WriteLine("This application will timeout if Send
 does not "
        + "return within " + Encoding.get_ASCII().GetString(s.
        GetSocketOption(SocketOptionLevel.Socket, 
        SocketOptionName.SendTimeout, 4)));
    // blocks until send returns
    int i = s.Send(msg);
    // blocks until read returns
    ubyte bytes[] = new ubyte[1024];

    s.Receive(bytes);
    //Display to the screen
    Console.WriteLine(Encoding.get_ASCII().GetString(bytes));
    s.Shutdown(SocketShutdown.Both);
    Console.WriteLine("If data remains to be sent, this application
 "
        + "will stay open for " + ((LingerOption)(s.
        GetSocketOption(SocketOptionLevel.Socket, 
        SocketOptionName.Linger))).get_LingerTime());
    s.Close();
} //SetSocketOptions

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Socket クラス
Socket メンバ
System.Net.Sockets 名前空間
SetSocketOption
SocketOptionName
SocketOptionLevel

Socket.GetSocketOption メソッド (SocketOptionLevel, SocketOptionName, Int32)

指定した Socket オプションの値を配列返します

名前空間: System.Net.Sockets
アセンブリ: System (system.dll 内)
構文構文

Public Function GetSocketOption ( _
    optionLevel As SocketOptionLevel, _
    optionName As SocketOptionName, _
    optionLength As Integer _
) As Byte()
Dim instance As Socket
Dim optionLevel As SocketOptionLevel
Dim optionName As SocketOptionName
Dim optionLength As Integer
Dim returnValue As Byte()

returnValue = instance.GetSocketOption(optionLevel, optionName, optionLength)
public byte[] GetSocketOption (
    SocketOptionLevel optionLevel,
    SocketOptionName optionName,
    int optionLength
)
public:
array<unsigned char>^ GetSocketOption (
    SocketOptionLevel optionLevel, 
    SocketOptionName optionName, 
    int optionLength
)
public byte[] GetSocketOption (
    SocketOptionLevel optionLevel, 
    SocketOptionName optionName, 
    int optionLength
)
public function GetSocketOption (
    optionLevel : SocketOptionLevel, 
    optionName : SocketOptionName, 
    optionLength : int
) : byte[]

パラメータ

optionLevel

SocketOptionLevel 値の 1 つ

optionName

SocketOptionName 値の 1 つ

optionLength

予期される戻り値バイト単位長さ

戻り値
ソケット オプションの値を格納している Byte 型の配列

例外例外
解説解説
使用例使用例

LingerOption タイムアウト値と Send タイムアウト値を取得しコンソール表示するコード例次に示します

    Console.WriteLine(("This application will timeout if Send does
 not return within " + Encoding.ASCII.GetString(s.GetSocketOption(SocketOptionLevel.Socket,
 SocketOptionName.SendTimeout, 4))))
    ' blocks until send returns
    Dim i As Integer = s.Send(msg)

    ' blocks until read returns
    Dim bytes(1024) As Byte
    s.Receive(bytes)

    'Display to the screen
    Console.WriteLine(Encoding.ASCII.GetString(bytes))
    s.Shutdown(SocketShutdown.Both)

    Console.WriteLine(("If data remains to be sent, this application
 will stay open for " + CType(s.GetSocketOption(SocketOptionLevel.Socket,
 SocketOptionName.Linger), LingerOption).LingerTime.ToString()))
    s.Close()
End Sub 'SetSocketOptions
Console.WriteLine ("This application will timeout if Send
 does not return within " + Encoding.ASCII.GetString (s.GetSocketOption
 (SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 4)));

// blocks until send returns
int i = s.Send (msg);

// blocks until read returns
byte[] bytes = new byte[1024];

s.Receive (bytes);

//Display to the screen
Console.WriteLine (Encoding.ASCII.GetString (bytes));
s.Shutdown (SocketShutdown.Both);
Console.WriteLine ("If data remains to be sent, this application
 will stay open for " + ((LingerOption)s.GetSocketOption
 (SocketOptionLevel.Socket, SocketOptionName.Linger)).LingerTime.ToString ());
s.Close ();
Console::Write(  "This application will timeout if Send does
 not return within " );
Console::WriteLine( Encoding::ASCII->GetString( s->GetSocketOption( SocketOptionLevel::Socket,
 SocketOptionName::SendTimeout, 4 ) ) );

// Blocks until send returns.
int i = s->Send( msg );

// Blocks until read returns.
array<Byte>^ bytes = gcnew array<Byte>(1024);

s->Receive( bytes );

//Displays to the screen.
Console::WriteLine( Encoding::ASCII->GetString( bytes ) );
s->Shutdown( SocketShutdown::Both );
Console::Write(  "If data remains to be sent, this application
 will stay open for " );
Console::WriteLine( safe_cast<LingerOption^>(s->GetSocketOption( SocketOptionLevel::Socket,
 SocketOptionName::Linger ))->LingerTime.ToString() );
s->Close();
    Console.WriteLine("This application will timeout if Send
 does not "
        + "return within " + Encoding.get_ASCII().GetString(s.
        GetSocketOption(SocketOptionLevel.Socket, 
        SocketOptionName.SendTimeout, 4)));
    // blocks until send returns
    int i = s.Send(msg);
    // blocks until read returns
    ubyte bytes[] = new ubyte[1024];

    s.Receive(bytes);
    //Display to the screen
    Console.WriteLine(Encoding.get_ASCII().GetString(bytes));
    s.Shutdown(SocketShutdown.Both);
    Console.WriteLine("If data remains to be sent, this application
 "
        + "will stay open for " + ((LingerOption)(s.
        GetSocketOption(SocketOptionLevel.Socket, 
        SocketOptionName.Linger))).get_LingerTime());
    s.Close();
} //SetSocketOptions

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Socket クラス
Socket メンバ
System.Net.Sockets 名前空間
SetSocketOption
SocketOptionName
SocketOptionLevel

Socket.GetSocketOption メソッド

Socket オプションの値を返します
オーバーロードの一覧オーバーロードの一覧

名前 説明
Socket.GetSocketOption (SocketOptionLevel, SocketOptionName) 指定した Socket オプションの値をオブジェクトとして返します

.NET Compact Framework によってサポートされています。

Socket.GetSocketOption (SocketOptionLevel, SocketOptionName, Byte[]) 指定した Socket オプション設定バイト配列として返します

.NET Compact Framework によってサポートされています。

Socket.GetSocketOption (SocketOptionLevel, SocketOptionName, Int32) 指定した Socket オプションの値を配列返します

.NET Compact Framework によってサポートされています。

参照参照

関連項目

Socket クラス
Socket メンバ
System.Net.Sockets 名前空間
SetSocketOption
SocketOptionName
SocketOptionLevel

Socket.GetSocketOption メソッド (SocketOptionLevel, SocketOptionName)

指定した Socket オプションの値をオブジェクトとして返します

名前空間: System.Net.Sockets
アセンブリ: System (system.dll 内)
構文構文

Public Function GetSocketOption ( _
    optionLevel As SocketOptionLevel, _
    optionName As SocketOptionName _
) As Object
Dim instance As Socket
Dim optionLevel As SocketOptionLevel
Dim optionName As SocketOptionName
Dim returnValue As Object

returnValue = instance.GetSocketOption(optionLevel, optionName)
public Object GetSocketOption (
    SocketOptionLevel optionLevel,
    SocketOptionName optionName
)
public:
Object^ GetSocketOption (
    SocketOptionLevel optionLevel, 
    SocketOptionName optionName
)
public Object GetSocketOption (
    SocketOptionLevel optionLevel, 
    SocketOptionName optionName
)
public function GetSocketOption (
    optionLevel : SocketOptionLevel, 
    optionName : SocketOptionName
) : Object

パラメータ

optionLevel

SocketOptionLevel 値の 1 つ

optionName

SocketOptionName 値の 1 つ

戻り値
オプションの値を表すオブジェクトoptionName パラメータLinger設定した場合戻り値は LingerOption クラスインスタンスです。optionName を AddMembership または DropMembership に設定した場合戻り値は MulticastOption クラスインスタンスです。optionName が他の値の場合戻り値整数です。

例外例外
例外種類条件

SocketException

ソケットへのアクセス試みているときにエラー発生しました詳細については「解説」を参照してください

または

optionName が、サポートされていない値 MaxConnections に設定されました。

ObjectDisposedException

Socket閉じられています。

解説解説
使用例使用例

LingerOption タイムアウト値と Send タイムアウト値を取得しコンソール表示するコード例次に示します

    Console.WriteLine(("This application will timeout if Send does
 not return within " + Encoding.ASCII.GetString(s.GetSocketOption(SocketOptionLevel.Socket,
 SocketOptionName.SendTimeout, 4))))
    ' blocks until send returns
    Dim i As Integer = s.Send(msg)

    ' blocks until read returns
    Dim bytes(1024) As Byte
    s.Receive(bytes)

    'Display to the screen
    Console.WriteLine(Encoding.ASCII.GetString(bytes))
    s.Shutdown(SocketShutdown.Both)

    Console.WriteLine(("If data remains to be sent, this application
 will stay open for " + CType(s.GetSocketOption(SocketOptionLevel.Socket,
 SocketOptionName.Linger), LingerOption).LingerTime.ToString()))
    s.Close()
End Sub 'SetSocketOptions
Console.WriteLine ("This application will timeout if Send
 does not return within " + Encoding.ASCII.GetString (s.GetSocketOption
 (SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 4)));

// blocks until send returns
int i = s.Send (msg);

// blocks until read returns
byte[] bytes = new byte[1024];

s.Receive (bytes);

//Display to the screen
Console.WriteLine (Encoding.ASCII.GetString (bytes));
s.Shutdown (SocketShutdown.Both);
Console.WriteLine ("If data remains to be sent, this application
 will stay open for " + ((LingerOption)s.GetSocketOption
 (SocketOptionLevel.Socket, SocketOptionName.Linger)).LingerTime.ToString ());
s.Close ();
Console::Write(  "This application will timeout if Send does
 not return within " );
Console::WriteLine( Encoding::ASCII->GetString( s->GetSocketOption( SocketOptionLevel::Socket,
 SocketOptionName::SendTimeout, 4 ) ) );

// Blocks until send returns.
int i = s->Send( msg );

// Blocks until read returns.
array<Byte>^ bytes = gcnew array<Byte>(1024);

s->Receive( bytes );

//Displays to the screen.
Console::WriteLine( Encoding::ASCII->GetString( bytes ) );
s->Shutdown( SocketShutdown::Both );
Console::Write(  "If data remains to be sent, this application
 will stay open for " );
Console::WriteLine( safe_cast<LingerOption^>(s->GetSocketOption( SocketOptionLevel::Socket,
 SocketOptionName::Linger ))->LingerTime.ToString() );
s->Close();
    Console.WriteLine("This application will timeout if Send
 does not "
        + "return within " + Encoding.get_ASCII().GetString(s.
        GetSocketOption(SocketOptionLevel.Socket, 
        SocketOptionName.SendTimeout, 4)));
    // blocks until send returns
    int i = s.Send(msg);
    // blocks until read returns
    ubyte bytes[] = new ubyte[1024];

    s.Receive(bytes);
    //Display to the screen
    Console.WriteLine(Encoding.get_ASCII().GetString(bytes));
    s.Shutdown(SocketShutdown.Both);
    Console.WriteLine("If data remains to be sent, this application
 "
        + "will stay open for " + ((LingerOption)(s.
        GetSocketOption(SocketOptionLevel.Socket, 
        SocketOptionName.Linger))).get_LingerTime());
    s.Close();
} //SetSocketOptions

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Socket クラス
Socket メンバ
System.Net.Sockets 名前空間
SetSocketOption
SocketOptionName
SocketOptionLevel


このページでは「.NET Framework クラス ライブラリ リファレンス」からSocket.GetSocketOptionを検索した結果を表示しています。
Weblioに収録されているすべての辞書からSocket.GetSocketOptionを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からSocket.GetSocketOption を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Socket.GetSocketOption」の関連用語

Socket.GetSocketOptionのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Socket.GetSocketOptionのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS