TornadoFX では、レシーバーが不要なイベントを二度と処理しないようにカスタム イベントのサブスクライブを解除し、メモリ リークなどを回避したいのですがunsubscribe<MyEvent>
、コードでメソッドを使用するとまったく機能しません。これが私のコードの一部です:
object MyEventObj: FXEvent(EventBus.RunOn.BackgroundThread)
class MyEventBus(val personlist:List<PersonOld>): FXEvent()
class MyController: Controller()
{
init
{
subscribe<MyEventObj> {
unsubscribe<MyEventObj> {
println("Unsubscribe event!") //unsubscrib event and make sure the next code just runs once, but never works!
}
println("Event has received!")
val items = listOf(PersonOld("Name A", 20), PersonOld("Name B", 25))
fire(MyEventBus(items))
}
}
}
それで、問題は何ですか?unsubscribe
TornadoFXでの使用方法 事前に助けてくれてありがとう!