Bonjour
J'ai une class nommée Toponyme dotées de plusieurs propriétés.
J'ai besoin d'utiliser plusieurs procédures qui lisent et écrivent des gros fichiers texte.
Ce faisant mon programme se bloque et ne réagit plus ni en mettant à jour une ProgressBar ni au click sur un bouton.
Je me suis donc lancer à la découverte des tâches asynchrones et la class TASK.
Mes procédures utilisent des SortedList qui sont des listes triées de Toponymes et déclarées en SortedList(of String, Toponyme)
Je déclare la première tâche avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part Dim slToponymes As SortedList(of String, Toponyme)
Avec cela j'ai deux problèmes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim tReadFile As Task(Of SortedList (Of String, Toponymes)) tReadFile= Task.Run( Function() ReadFileAsync(FileName) End Function)
1)La procédure ReadFileAsync devrait être une Fonction et non un Sub car elle doit retourner une SortedList. Mais VB.NET ne le permet pas . J'ai donc essayé de contourner le problème via un variable globale pour cette SortedList.
2) Le code ci-dessus indique à juste titre que la fonction lambda ne retourne aucune valeur car c'est une Sub.
Merci pour votre aide
Bernard
Partager