As the tutorial point out (As our update callback just rotates the object it gets from the context parameter,we'll have, as a result, both objects turning as the same speed. However, the rotation of the second one will be far less smooth (5 Hz) than the first one's (100 Hz).
Q: Why the object gets from the context so they are turning as the same speed?
Comments
Why are they turning at the "same speed"? Because it's defined per objects and both have the same angular velocity.
The fact one clock runs at 5 Hz and the other one at 100 Hz just means the update callback will be called 5 times per second for the first clock and 100 times per second for the second one (or less if the frame rate is capped with vsync for example).
During those updates the clock information, including the DT (delta time, ie. the time elapsed since last update call), are passed to the update callbacks.
Let's pretend the objects turn at 360 degrees per second. That means that the object with the 5 Hz callback gets rotated by 360/5 = 48 degrees every call and the other one by 360/100 = 3.6 degrees every call.