Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Πρόβλημα με Timer

Îåêßíçóå áðü ôï ìÝëïò Ioannis P. Τελευταία δημοσίευση από το μέλος Ioannis P στις 05-07-2006, 09:29. Υπάρχουν 5 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  28-06-2006, 10:23 14275

    Πρόβλημα με Timer

    Μέσω μιας εφαρμογής που τρέχει σε ppc 2003 (NET.cf2) (Symbol 8846) θέλω να αντιγράφω κάποια αρχεία από ένα υπολογιστή τοπικά. Το πρόβλημα που έχω είναι οτι επειδή η διαδικασία κρατάει αρκετά, το ppc κλείνει λόγω των ρυθμίσεων στη διαχείριση ενέργειας. Ψάχνωντας, βρήκα οτι μπορώ να μηδενίζω σε τακτά χρονικά διαστήματα τον idle counter και να διατηρώ το ppc ανοιχτό όσο τρέχει η εφαρμογή μου. Έβαλα λοιπόν την SystemIdleTimerReset() στην tick ενός timer που έχει interval 8000 και διαπίστωσα οτι κατά την διάρκεια της αντιγραφής ενός μεγάλου αρχείου (η αντιγραφή του κρατάει 5 λεπτά) η tick δεν ενεργοποιείται καθόλου. Γνωρίζει κανείς αν μπορώ να κάνω κάτι γι' αυτό;
  •  04-07-2006, 10:00 14391 σε απάντηση της 14275

    Απ: Πρόβλημα με Timer

    Επειδή δεν κατάφερα να βρω λύση έκανα ένα ξεχωριστό exe που εκτελεί την SystemIdleTimerReset().
  •  04-07-2006, 10:39 14392 σε απάντηση της 14391

    Απ: Πρόβλημα με Timer

    Μου φαίνεται για πρόβλημα threading. Δοκίμασε να βάλεις την αντιγραφή του αρχείου να τρέχει σε διαφορετικό thread απο τον timer.


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  04-07-2006, 19:05 14415 σε απάντηση της 14275

    Απ: Πρόβλημα με Timer

    Μήπως έχεις κάποιο σχετικό παράδειγμα;

    Ευχαριστώ.
  •  04-07-2006, 21:17 14418 σε απάντηση της 14415

    Απ: Πρόβλημα με Timer

    Ορίστε η γενική ιδεά (ψάξε για παραδείγματα threading στο google):

    Βάζεις την εντολή αντιγραφής σε μια ξεχωριστή συνάρτηση χωρίς παραμέτρους π.χ. MyCopyFunction.

    Στον κώδικα που ξεκινάει το timer, λίγο πριν, ανοίγεις ένα νέο thread:

    Dim t as new System.Threading.Thread(AddressOf MyCopyFunction)

    t.Start()
    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  05-07-2006, 09:29 14421 σε απάντηση της 14275

    Απ: Πρόβλημα με Timer

    Ευχαριστώ πολύ. Το έφτιαξα :-)

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems