1
J'ai Carte des articles que je veux écouter les changements et faire quelques actions et je veux le faire dans thread séparé, mais la carte est changé, mais je pourrais l'écouter changeComment écouter les changements de valeur de HashMap dans un thread séparé le rendant fluide?
val removedItemList: HashMap<Int,Item> = HashMap()
Flowable.fromArray(removedShoppingList.values).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe({ items ->
Log.i("items_removed", " " + items + items.size);
})
Cela dépend de quoi et comment voulez-vous pour être informé. Intercepter les appels de méthode Map en enveloppant removeListItem dans une classe personnalisée et en utilisant 'PublishSubject' (s) pour divers événements de modification. Notez cependant que HashMap n'est pas sûr pour les threads, donc signaler la totalité de la map à un thread séparé ou simplement en faire la lecture dans d'autres threads est dangereux. – akarnokd
Ok, je vois, que penses-tu de le changer en ConcurentHashMap? Et ce que vous voulez dire "comment voulez-vous être informé?" –
Les articles peuvent être ajoutés, supprimés, remplacés par quelques douzaines de méthodes, lesquels voulez-vous détecter? – akarnokd