File tree Expand file tree Collapse file tree 1 file changed +18
-16
lines changed Expand file tree Collapse file tree 1 file changed +18
-16
lines changed Original file line number Diff line number Diff line change 22
22
import rx .subscriptions .MultipleAssignmentSubscription ;
23
23
24
24
/**
25
- * Represents an object that schedules units of work.
26
- * <p>
27
- * Common implementations can be found in {@link Schedulers}.
28
- * <p>
29
- * Why is this an abstract class instead of an interface?
30
- * <ol>
31
- * <li>Java doesn't support extension methods and there are many overload methods needing default
32
- * implementations.</li>
33
- * <li>Virtual extension methods aren't available until Java8 which RxJava will not set as a minimum target for
34
- * a long time.</li>
35
- * <li>If only an interface were used Scheduler implementations would then need to extend from an
36
- * AbstractScheduler pair that gives all of the functionality unless they intend on copy/pasting the
37
- * functionality.</li>
38
- * <li>Without virtual extension methods even additive changes are breaking and thus severely impede library
39
- * maintenance.</li>
40
- * </ol>
25
+ * A {@code Scheduler} is an object that schedules units of work. You can find common implementations of this
26
+ * class in {@link Schedulers}.
41
27
*/
42
28
public abstract class Scheduler {
29
+ /*
30
+ * Why is this an abstract class instead of an interface?
31
+ *
32
+ * : Java doesn't support extension methods and there are many overload methods needing default
33
+ * implementations.
34
+ *
35
+ * : Virtual extension methods aren't available until Java8 which RxJava will not set as a minimum target for
36
+ * a long time.
37
+ *
38
+ * : If only an interface were used Scheduler implementations would then need to extend from an
39
+ * AbstractScheduler pair that gives all of the functionality unless they intend on copy/pasting the
40
+ * functionality.
41
+ *
42
+ * : Without virtual extension methods even additive changes are breaking and thus severely impede library
43
+ * maintenance.
44
+ */
43
45
44
46
/**
45
47
* Retrieves or creates a new {@link Scheduler.Worker} that represents serial execution of actions.
You can’t perform that action at this time.
0 commit comments