pub type BoxedTaskFunction<E> = Box<dyn TaskFunction<E> + Send + Sync + 'static>;
struct BoxedTaskFunction<E>(/* private fields */);