DHT11s read fine from loop, but first one in list doesn't work when in timer...?

Something I've noticed is - if I wrap my loop() with code that turns an LED on and off (beginning and end of the loop,) using the TimedAction code (which relies on millis()) causes a substantially more noticeable flicker on the LED than using the interrupts to set a flag to do the checks. So, even though both methods result in the main loop() being put on pause when the sensor reading function is running, doing the checks with interrupts seems to be much more efficient.