F # межпоточное исключение пользовательского интерфейса в приложении WinForms
У меня проблема с разработкой простого приложения на F #, которое просто считывает длину запрашиваемой HTML-страницы.
Кажется, что такая ошибка будет похожа и на язык VB.NET/C# при разработке приложения с пользовательским интерфейсом.
Но я'я довольно новичок в F # и неВообще-то сложно представить, чтобы исправить эту проблему именно в F #.
Исходный код на F #:
open System
open System.Net
open Microsoft.FSharp.Control.WebExtensions
open System.Windows.Forms
let form = new Form()
let text = new Label()
let button = new Button()
let urlList = [ "Microsoft.com", "http://www.microsoft.com/"
"MSDN", "http://msdn.microsoft.com/"
"Bing", "http://www.bing.com"
]
let fetchAsync(name, url:string) =
async {
try
let uri = new System.Uri(url)
let webClient = new WebClient()
let! html = webClient.AsyncDownloadString(uri)
text.Text printfn "%s" (ex.Message);
}
let runAll() =
urlList
|> Seq.map fetchAsync
|> Async.Parallel
|> Async.RunSynchronously
|> ignore
form.Width