If I set a TTL, will it ensure that the workflow will not start after the specified time?

No. Even with a TTL in place, a workflow can still start after the specified time. This issue can happen if delays occur in the system’s event processing. However, TTLs reduces the likelihood of outdated or irrelevant workflows being triggered.

For more information, see Overview of triggers.