TornadoFX에서 수신자가 불필요한 이벤트를 다시 처리하지 못하게하고 메모리 누수와 같은 것을 피할 수 있도록 맞춤 이벤트를 수신 거부하고 싶습니다. 그러나 코드에서 unsubscribe<MyEvent>
메소드를 사용하면 전혀 작동하지 않습니다. 여기 내 코드의 일부입니다 :TornadoFX에서 이벤트 구독을 취소하는 방법은 무엇입니까?
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))
}
}
}
그래서, 무엇이 문제입니까? TornadoFX에서 unsubscribe
을 어떻게 사용합니까? 사전에 도와 줘서 고마워!
은 몇 가지 코드를 추가하고 재 작성하게, 나는 그것을 가지고 마지막에 그! 고마워, 이미 내 테스트 코드에서 작동합니다. – SpkingR
Great :) 보일러 플레이트를 더 줄이기 위해 1.6.3이 출시 된 후에 다시 방문하고 싶을 수도 있습니다. :) –
대단하네요 !! 나는 새로운 버전과 곧 사용할 수있는 새로운 기능을 확인하기 위해 기다릴 수 없어, 마침내 나는 내 방식으로 그것을 사용할 수 있습니다 ... (∩_∩) – SpkingR