Application trop lente

beny100 Messages postés 213 Date d'inscription vendredi 17 novembre 2006 Statut Membre Dernière intervention 1 avril 2009 - 29 janv. 2007 à 10:16
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 3 févr. 2007 à 19:19
bonjour, mon application sous csharp est trop lente
quant je la lance elle met environ 30 minutes comment y remedier?
j'ai une ram de 1 go et un processeur de 2.4ghz avec 75 go de disk dur
et j'ai que deux boucles dans le corps de mon programme

9 réponses

Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
29 janv. 2007 à 10:27
Salut

positionne des timer dans ton app comme cela tu verras ou ton application met du temps ....

Herve
0
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
29 janv. 2007 à 21:49
Salut.. 30 minutes pour démarrer ??  Y'a forcément un problème mais tu nous donnes aucune info, aucun code, on ne peut pas deviner ce qui se passe..
0
cs_RMI Messages postés 305 Date d'inscription vendredi 18 juillet 2003 Statut Membre Dernière intervention 2 août 2010 2
30 janv. 2007 à 08:59
La classe StopWatch te permet de calculer trés précisement les temps dans ton code

Théo
0
beny100 Messages postés 213 Date d'inscription vendredi 17 novembre 2006 Statut Membre Dernière intervention 1 avril 2009
30 janv. 2007 à 09:06
voici mon code:

for (
int i = 0; i < table.Count; i++){

Cursor.Current =
Cursors.WaitCursor; 

progressBar1.Visible =

true;

// Set Minimum to 1 to represent the first file being copied.progressBar1.Minimum = 1;

// Set Maximum to the total number of files to copy.progressBar1.Maximum = table.Count*3;

// Set the Step property to a value of 1 to represent each file being copied.progressBar1.Step = 1;

// Perform the increment on the ProgressBar.progressBar1.PerformStep();

 

string date=dateTimePicker1.Text;
//date de debut

string date1=dateTimePicker2.Text;
//date de fin

string site=table[i].ToString();
string myQuery "";myQuery

"select duree, sum(duree) from Site where periode='" + date +
"'and periode<='" + date1 +
"'and Site_ou_cellule='" + site +
"'and module='" + module +
"'GROUP BY duree ORDER BY duree ";

SqlConnection cnx1 =
null;

String cs1 =
"Database=RADIO;Data Source=localhost;Integrated Security=SSPI;Pooling =false;";cnx1 =

new
SqlConnection(cs1);

SqlCommand Cmd1 =
new
SqlCommand();Cmd1.Connection = cnx1;

Cmd1.CommandText = myQuery;

SqlDataReader Reader1;cnx1.Open();

Reader1 = Cmd1.ExecuteReader();

//int max = 0;

try{

while (Reader1.Read()){
Cursor.Current Cursors.WaitCursor;x

Int32.Parse(Reader1.GetValue(0).ToString());k = Reader1.GetInt32(1);

y = k + y ;

}

}

catch{y=0;}duree.Add(y);

//contient la duree 

//Reader.Close();cnx1.Close();
Cursor.Current Cursors.Default;x 0;

y = 0;

k = 0;

progressBar1.Visible =

true;

}

il s'arrête a cnx1.open().
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_RMI Messages postés 305 Date d'inscription vendredi 18 juillet 2003 Statut Membre Dernière intervention 2 août 2010 2
30 janv. 2007 à 09:34
Est ce que ta connection est finalement ouverte ?
Regarde si ta chaine de connection est valide.

Théo
0
beny100 Messages postés 213 Date d'inscription vendredi 17 novembre 2006 Statut Membre Dernière intervention 1 avril 2009
30 janv. 2007 à 09:55
oui elle est ouverte et maintenant elle s'arrête sur
Reader1 = Cmd1.ExecuteReader();
mais quant je lui dit de continuer il continue jusqu' a la fin de l'execution.
0
cs_RMI Messages postés 305 Date d'inscription vendredi 18 juillet 2003 Statut Membre Dernière intervention 2 août 2010 2
30 janv. 2007 à 10:04
Est ce que ta requête est correcte ?
select duree, sum(duree)...  me semble vraiment bizarre.

"select sum(duree) from Site where periode='" + date +
"'and periode<='" + date1 +
"'and Site_ou_cellule='" + site +
"'and module='" + module
;
ou

"select duree from Site where periode='" + date +
"'and periode<='" + date1 +
"'and Site_ou_cellule='" + site +
"'and module='" + module
+" ORDER BY duree ";

Théo
0
beny100 Messages postés 213 Date d'inscription vendredi 17 novembre 2006 Statut Membre Dernière intervention 1 avril 2009
30 janv. 2007 à 10:11
oui la requette est bonne et marche très bien!
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
3 févr. 2007 à 19:19
Salut,

Petit remarque habituelle au passage : ne jamais faire de concaténation mais plutot passer par les requetes paramétrée => http://msdn2.microsoft.com/fr-fr/library/ms161953.aspx

Sinon il faut aussi voir le volume de données traitées.
30 minutes c'est efectivement assez grand, surtout pour des données locales.

/*
coq
MVP Visual C#
CoqBlog
*/
0
Rejoignez-nous