From my viewpoint (coding for things that can kill people), looking FOR a specific time to do something is so fraught with danger, it should be a last resort only.
Instead, look for the time being Equal to OR LATER than your target, and setting a flag once done. That way, even if you are unavoidably delayed, you will still execute it once, even if it is a few seconds later.
Also, by way of comment - the temperatures are read in the background. Reading say T1, T2 and T3, will not stop execution for 3*800ms = 2400ms.
They are read in the background and stored as "immediately available" values, but they just won't update instantly.
My longest program is (edited - I included comments and notes in my initial count) 2086 856 lines, and it still gets around reliably in under a second.