IDuplexSession.CloseOutputSession Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Termina la sessione in uscita che indica che non verranno più inviati messaggi da questo endpoint nel canale associato alla sessione.
Overload
CloseOutputSession() |
Termina la sessione in uscita che indica che non verranno più inviati messaggi da questo endpoint nel canale associato alla sessione. |
CloseOutputSession(TimeSpan) |
Termina la sessione in uscita che indica che non verranno più inviati messaggi da questo endpoint nel canale associato alla sessione entro l'intervallo di tempo specificato. |
CloseOutputSession()
Termina la sessione in uscita che indica che non verranno più inviati messaggi da questo endpoint nel canale associato alla sessione.
public:
void CloseOutputSession();
public void CloseOutputSession ();
abstract member CloseOutputSession : unit -> unit
Public Sub CloseOutputSession ()
Commenti
La chiamata CloseOutputSession() segnala all'altro lato della sessione che deve restituire null
da qualsiasi chiamata in sospeso o successiva effettuata a Receive. CloseOutputSession è idempotente, quindi chiamarlo di nuovo non ha alcun effetto.
L'interruzione della sessione in uscita non influisce sulla sessione in ingresso e non crea quindi istruzioni sulla possibilità di ricevere messaggi nella sessione associata al canale di ingresso.
Note per gli implementatori
CloseOutputSession() è un metodo di sessione in grado di interagire con IDuplexSessionChannel proprietaria della sessione. In particolare, se la durata della sessione viene sommata a quella del canale, come nel caso di TCP e di una sessione e sicurezza affidabili:
Se CloseOutputSession() viene chiamato prima Close() che venga chiamato sul canale, Close() deve attendere CloseOutputSession() il completamento.
Se il canale si trova nello Created stato o Opening , CloseOutputSession() deve generare un'eccezione InvalidOperationException.
Se il canale è nello Faulted stato , CloseOutputSession() deve generare un'eccezione CommunicationObjectFaultedException.
Il canale deve generare un errore se CloseOutputSession() viene generato.
L'implementazione di Close() nel canale deve chiamare CloseOutputSession() e quindi verificare che Receive() restituisca
null
, che indica che CloseOutputSession() è stato chiamato dall'altro lato della sessione.
Si applica a
CloseOutputSession(TimeSpan)
Termina la sessione in uscita che indica che non verranno più inviati messaggi da questo endpoint nel canale associato alla sessione entro l'intervallo di tempo specificato.
public:
void CloseOutputSession(TimeSpan timeout);
public void CloseOutputSession (TimeSpan timeout);
abstract member CloseOutputSession : TimeSpan -> unit
Public Sub CloseOutputSession (timeout As TimeSpan)
Parametri
- timeout
- TimeSpan
TimeSpan specifica l'intervallo di tempo entro il quale l'operazione deve essere completata.
Commenti
La chiamata CloseOutputSession(TimeSpan) segnala all'altro lato della sessione che deve restituire null
da qualsiasi chiamata in sospeso o successiva effettuata a Receive. CloseOutputSession è idempotente, quindi chiamarlo di nuovo non ha alcun effetto.
L'interruzione della sessione in uscita non influisce sulla sessione in ingresso e non crea quindi istruzioni sulla possibilità di ricevere messaggi nella sessione associata al canale di ingresso.
Note per gli implementatori
CloseOutputSession() è un metodo di sessione in grado di interagire con IDuplexSessionChannel proprietaria della sessione. In particolare, se la durata della sessione viene sommata a quella del canale, come nel caso di TCP e di una sessione e sicurezza affidabili:
Se CloseOutputSession() viene chiamato prima Close() che venga chiamato sul canale, Close() deve attendere CloseOutputSession() il completamento.
Se il canale si trova nello Created stato o Opening , CloseOutputSession() deve generare un'eccezione InvalidOperationException.
Se il canale è nello Faulted stato , CloseOutputSession() deve generare un'eccezione CommunicationObjectFaultedException.
Il canale deve generare un errore se CloseOutputSession() viene generato.
L'implementazione di Close() nel canale deve chiamare CloseOutputSession() e quindi verificare che Receive() restituisca
null
, a indicare che CloseOutputSession() è stato chiamato dall'altro lato della sessione.