Langage

Exchanger.Exchange Méthode

Définition

Surcharges

Nom Description
Exchange(Object)

Attend qu’un autre thread arrive à ce point d’échange (sauf si le thread actuel est interrompu thread#interruption), puis transfère l’objet donné à celui-ci, recevant son objet en retour.

Exchange(Object, Int64, TimeUnit)

Attend qu’un autre thread arrive à ce point d’échange (sauf si le thread actuel est interrompu thread#interruption ou que le temps d’attente spécifié s’écoule), puis transfère l’objet donné à celui-ci, en recevant son objet en retour.

Exchange(Object)

Attend qu’un autre thread arrive à ce point d’échange (sauf si le thread actuel est interrompu thread#interruption), puis transfère l’objet donné à celui-ci, recevant son objet en retour.

[Android.Runtime.Register("exchange", "(Ljava/lang/Object;)Ljava/lang/Object;", "GetExchange_Ljava_lang_Object_Handler")]
public virtual Java.Lang.Object? Exchange(Java.Lang.Object? x);
[<Android.Runtime.Register("exchange", "(Ljava/lang/Object;)Ljava/lang/Object;", "GetExchange_Ljava_lang_Object_Handler")>]
abstract member Exchange : Java.Lang.Object -> Java.Lang.Object
override this.Exchange : Java.Lang.Object -> Java.Lang.Object

Paramètres

x
Object

objet à échanger

Retours

l’objet fourni par l’autre thread

Attributs

Remarques

Attend qu’un autre thread arrive à ce point d’échange (sauf si le thread actuel est interrompu thread#interruption), puis transfère l’objet donné à celui-ci, recevant son objet en retour.

Si un autre thread attend déjà au point d’échange, il est repris à des fins de planification de threads et reçoit l’objet transmis par le thread actuel. Le thread actuel retourne immédiatement, recevant l’objet passé à l’échange par cet autre thread.

Si aucun autre thread n’attend déjà à l’échange, le thread actuel est désactivé à des fins de planification de threads et se trouve dormant jusqu’à ce que l’une des deux choses se produise : <ul><li Li>Un autre thread entre dans l’échange ; ou <li>Un autre thread thread#interruption interrompt le thread actuel. </ul>

Si le thread actuel : <ul><li>a son état interrompu défini sur l’entrée de cette méthode ; ou <li>est l’interruption thread#interruption en attendant l’échange, </ul> est InterruptedException levée et l’état interrompu du thread actuel est effacé.

Java documentation pour java.util.concurrent.Exchanger.exchange(V).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à

Exchange(Object, Int64, TimeUnit)

Attend qu’un autre thread arrive à ce point d’échange (sauf si le thread actuel est interrompu thread#interruption ou que le temps d’attente spécifié s’écoule), puis transfère l’objet donné à celui-ci, en recevant son objet en retour.

[Android.Runtime.Register("exchange", "(Ljava/lang/Object;JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;", "GetExchange_Ljava_lang_Object_JLjava_util_concurrent_TimeUnit_Handler")]
public virtual Java.Lang.Object? Exchange(Java.Lang.Object? x, long timeout, Java.Util.Concurrent.TimeUnit? unit);
[<Android.Runtime.Register("exchange", "(Ljava/lang/Object;JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;", "GetExchange_Ljava_lang_Object_JLjava_util_concurrent_TimeUnit_Handler")>]
abstract member Exchange : Java.Lang.Object * int64 * Java.Util.Concurrent.TimeUnit -> Java.Lang.Object
override this.Exchange : Java.Lang.Object * int64 * Java.Util.Concurrent.TimeUnit -> Java.Lang.Object

Paramètres

x
Object

objet à échanger

timeout
Int64

durée maximale d’attente

unit
TimeUnit

unité de temps de l’argument timeout

Retours

l’objet fourni par l’autre thread

Attributs

Remarques

Attend qu’un autre thread arrive à ce point d’échange (sauf si le thread actuel est interrompu thread#interruption ou que le temps d’attente spécifié s’écoule), puis transfère l’objet donné à celui-ci, en recevant son objet en retour.

Si un autre thread attend déjà au point d’échange, il est repris à des fins de planification de threads et reçoit l’objet transmis par le thread actuel. Le thread actuel retourne immédiatement, recevant l’objet passé à l’échange par cet autre thread.

Si aucun autre thread n’attend déjà à l’échange, le thread actuel est désactivé à des fins de planification de threads et se trouve dormant jusqu’à ce que l’une des trois choses se produisent : <ul<>li>Li Un autre thread entre dans l’échange ; ou <li>Un autre thread thread#interruption interrompt le thread actif ; ou <li>Le temps d’attente spécifié s’écoule. </ul>

Si le thread actuel : <ul><li>a son état interrompu défini sur l’entrée de cette méthode ; ou <li>est l’interruption thread#interruption en attendant l’échange, </ul> est InterruptedException levée et l’état interrompu du thread actuel est effacé.

Si le temps d’attente spécifié s’écoule, TimeoutException il est levée. Si le temps est inférieur ou égal à zéro, la méthode n’attend pas du tout.

Java documentation pour java.util.concurrent.Exchanger.exchange(V, long, java.util.concurrent.TimeUnit).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à