Collections.SynchronizedNavigableSet(INavigableSet) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回由指定的可巡覽集支援的同步處理(安全線程)導覽集。
[Android.Runtime.Register("synchronizedNavigableSet", "(Ljava/util/NavigableSet;)Ljava/util/NavigableSet;", "", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static Java.Util.INavigableSet SynchronizedNavigableSet(Java.Util.INavigableSet s);
[<Android.Runtime.Register("synchronizedNavigableSet", "(Ljava/util/NavigableSet;)Ljava/util/NavigableSet;", "", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member SynchronizedNavigableSet : Java.Util.INavigableSet -> Java.Util.INavigableSet
參數
在同步導覽集中要「包裝」的可巡覽集
傳回
指定之可巡覽集的同步檢視
- 屬性
備註
傳回由指定的可巡覽集支援的同步處理(安全線程)導覽集。 為了保證序列存取, <必須透過傳回的可巡覽集(或其檢視表)來完成對備份導覽集的強>式所有</強式> 存取。
使用者必須透過、 或 Stream
,在周遊傳回的導覽集上手動同步處理,或其任何subSet
、 headSet
或 tailSet
檢視Iterator
Spliterator
表:
NavigableSet s = Collections.synchronizedNavigableSet(new TreeSet());
...
synchronized (s) {
Iterator i = s.iterator(); // Must be in the synchronized block
while (i.hasNext())
foo(i.next());
}
or:
NavigableSet s = Collections.synchronizedNavigableSet(new TreeSet());
NavigableSet s2 = s.headSet(foo, true);
...
synchronized (s) { // Note: s, not s2!!!
Iterator i = s2.iterator(); // Must be in the synchronized block
while (i.hasNext())
foo(i.next());
}
若未遵循這項建議,可能會導致不具決定性的行為。
如果指定的可巡覽集可串行化,則傳回的可巡覽集可串行化。
已在1.8中新增。
的 java.util.Collections.synchronizedNavigableSet(java.util.NavigableSet<T>)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。