bonsoir j'utilise vb.net et a la fin de l'application je constate que le programme exécute trop lentement mais je pense qu'une partie du code est la cause principal

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
k = 0
        If tableau_structure.Count >= 1 Then
 
 
            Do
                If tableau_structure(k).operateurs = intermediate.operateurs And tableau_structure(k).country = intermediate.country And tableau_structure(k).int_outband = intermediate.int_outband And tableau_structure(k).tcapops = intermediate.tcapops Then
 
                    intermediate.tentatives = tableau_structure(k).tentatives + 1
                    intermediate.succes = 0
                    tableau_structure(k).tcap_id.Add(tcap_origine)
 
                    intermediate.tcap_id = tableau_structure(k).tcap_id
                    'ajout
                    intermediate.tcapops = tcap
 
                    tableau_structure.Remove(tableau_structure(k))
                    tableau_structure.Insert(k, intermediate)
                    flag_3 = True
 
                End If
                k = k + 1
            Loop Until flag_3 = True Or k > tableau_structure.Count - 1
        End If
 
        If flag_3 = False Then
 
            intermediate.tentatives = 1
            intermediate.tcap_id.Add(tcap_origine)
            'ajout
            intermediate.tcapops = tcap
 
            intermediate.succes = 0
            tableau_structure.Add(intermediate)
 
        End If

-tableau_structure est une liste de classe que j'ai définie en bas et dans lequel toutes les informations relatifs pour chaque opérateur seront écrits dedans
- intermediate est un objet de type information définit ci dessous
( Dim intermediate As New information)

ce que j'ai postulé ci dessus est une partie d'une fonction dans laquelle je cherche en premier la classe dans ma liste de classe qui a les 3 criteres (operateurs country, int_outbound) donc si je le trouve j’incrémente le nombre de tentatives si non je crée une nouvelle classe dans laquelle je met toutes les informations de l’opérateur en question.
ma question est ; est ce qu'il n'existerait pas une fonction de VB.net qui ferait le travail plus rapidement c'est ça le challenge



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Public Class information
    Public tentatives As Integer
    Public operateurs As String
    Public country As String
    Public int_outband As String
    '  Dim struct_error As List(Of erreur)
    'Dim ssn1 As String
    'Dim ssn2 As String
    Public succes As String
 
    Public origines As String
    Public destinations As String
    Public tcapops As String
    Public i As Integer
    Public taille As Integer
    Public tcap_id As List(Of String)
    Public nombre_erreur As New List(Of Integer)
    Public type_erreur As New List(Of String)
    Public index As Integer
    'Dim nbre_faute As Integer
    Public faute As String
End Class
Merci de m'aider