This is the length of time in seconds that a template cache is valid. Once this time has expired, the cache will be regenerated.
$caching must be turned on (either 1 or 2) for $cache_lifetime to have any purpose.
A value of -1 will force the cache to never expire.
A value of 0 will cause the cache to always regenerate (good for testing only, to disable caching a more efficient method is to set $caching = 0).
If you want to give certain templates their own cache lifetime, you could do this by setting $caching = 2, then set $cache_lifetime to a unique value just before calling display() or fetch().
If $force_compile is enabled, the cache files will be regenerated every time, effectively disabling caching. You can clear all the cache files with the clear_all_cache() function, or individual cache files (or groups) with the clear_cache() function.