In an ideal world, the View State should be kept available until the user closes the page or navigates away. However, the server is never notified of these events and we have to make the best use of our finite amount of resources to service as many users as possible.
In reality, without any intervention, user sessions will expire and your server may restart for many reasons out of your control (re-configuration, OS updates, new deployment, idling, recycling, etc.) that causes the View State to automatically become invalid on its own. From Web statistics, we know the average user spends about 2 minutes or less on a page, therefore, in practice, it's recommended to set a reasonable expiration time so that old View State can be purged to make space for newer data.
You can configure the duration in number of minutes when Revindex Optimizer should expire a View State that has not changed. For example, you can set the duration to 20 minutes so that any stale View State will be purged after that time. This is a sliding expiration meaning anytime the View State is changed, it will be valid for another 20 minutes duration. There is no expiration when the default page storage type is used.
In the event the View State is expired after 20 minutes of idling and the user attempts to access it by posting the page to the server, the Optimizer will politely reload the page so that the user can resume the action and avoided what normally would have been an error message. This fallback strategy is consistent with the behavior experienced by the user when his session has expired (e.g. a user who is logged in and his session has expired, the Web site will redirect back to the login page).