optionally choose what worker to send tasks to

Does this work if preferredZkWorker is null?