In addition to RAc’s explanation reading a sensor, doing some post-processing and perhaps forwarding the value to another task might be a lengthy operation which might not be suited done as timer callback. Because it’d stall the timer task state machine and other timers running might miss their deadlines etc.
A good rule is that timer callbacks should be short and don’t block, of course. Pretty similar to ISRs.