F# can't catch TimeoutException
问题 My question is really simple. Please take a look at screenshot: How could that happen? I explicitly put call to Async.RunSyncronously into try ... with . 回答1: try/with in F# async workflows do not map directly to CLR protected blocks - instead if exception is raised in user code, library code will catch it and re-route to the nearest error continuation (which can be i.e with block , finally block , custom error continuation supplied in Async.StartWithContinuations etc...). This has a