Refresh doesn’t mean that the template will run its contents. You would need a cron job for that.
That or the code would need to be on a template which you know for a fact is going to get lots of hits although saying that caching works more like this.
This is probably a bad example but hopefully it will get the idea across. Say you have a page with the latest news items on it (10 showing). You set the template caching to 60 minutes. You visit that page and see the news items. What this now means is that you could post another 100 news items but none of them will show up on that page until 60 minutes have passed even though they are valid weblog entries which would otherwise normally show up.
Once the 60 minutes have passed then new items would show and so on and so forth.
Caching just creates a sort of static page until the cache runs out and then it creates a new one if there are changes. Using caching however does not mean that the page will run once every hour. As mentioned above you would need to run a cron job in order for that to happen.
Best wishes,
Mark