Różnica między Runnable a Task

0

Witam,

mógłby mi ktoś wyjaśnić na czym polega różnica między interfejsem Runnable a klasą Task? Wiem że w obydwu przypadkach można stworzyć wątek w połączeniu z Thread ale czy są jakieś znaczące różnice?

0

W javie mozesz implementowac dowolna ilosc interfejsów, ale możesz dziedziczyć tylko z jednej klasy.

0

to akurat wiem, ale to jest jedyna "różnica"?

1

Ale chodzi ci o klasę Task z JavaFX?

Because the Task is designed for use with JavaFX GUI applications, it ensures that every change to its public properties, as well as change notifications for state, errors, and for event handlers, all occur on the main JavaFX application thread. Accessing these properties from a background thread (including the call() method) will result in runtime exceptions being raised.

I generalnie ta klasa ma jakieś powiązania z JavąFX więc to taki "specjalny" Runnable.

1

Jak @Shalom wspomniał jest to klasa związana z JavaFX i implementuje ona interface Future. Tym chociaż się różni od runnable że runnable jest void a taki Task jako implementacja Future zwraca rezultat działania, np. możesz wykorzystac do strzału do REST API pobrania danych sparsowana do jakiegoś DTO i zwrócenia rezultatu :)

0

@Shalom: tak dokładnie o tej klasie mówię.

Dzięki wielkie za pomoc

1 użytkowników online, w tym zalogowanych: 0, gości: 1