Δευτέρα 16 Νοεμβρίου 2015

Αναθεώρηση 87

Νέα αναθεώρηση 87.
Είναι η δεύτερη που γίνεται σε περιβάλλον Windows 7. Έλυσα μερικά προβλήματα κατά το σώσιμο αρχείων σε 7 η CreateFileW των Windows (του λειτουργικού) πολλές φορές κρεμούσε το περιβάλλον, και αδυνατούσα μέχρι σήμερα να βρω ένα τρόπο να το σιγουρέψω. Σε XP δεν υπήρξε ποτέ πρόβλημα. Τελικά το έλυσα με την σκέψη ότι για να δουλέψει καλά πρέπει να περιμένει κάτι το οποίο δεν το παρέχω άμεσα, αλλά ίσως το παρέχει μια άλλη εντολή! Πράγματι η ιδέα είχε αποτέλεσμα! Έβαλα μια εντολή (μιλάμε για το κώδικα του περιβάλλοντος σε Visual Basic 6) η οποία απλά διαβάζει το πρώτο στοιχείο του καταλόγου που θα γράψουμε το αρχείο. Προσοχή έχει αναφερθεί μια φορά το πρόβλημα, σπάνιο αλλά γίνεται - θα διορθωθεί το συντομότερο.
(αυτό δεν γίνεται εκεί που επιλύθηκε αλλά πιο πριν κατά τη διαγραφή του backup αρχείου).

Επίσης βελτιστοποίησα τα τρία επίπεδα ταχύτητας ΑΡΓΑ, ΓΡΗΓΟΡΑ και ΓΡΗΓΟΡΑ !  (μέσα από τμήματα πρέπει να δώσουμε το ΘΕΣΕ στην αρχή, π.χ. ΘΕΣΕ ΓΡΗΓΟΡΑ).
Το ΑΡΓΑ δεν είναι πια τόσο αργό όσο ήταν πριν. Δίνει χρόνο στο σύστημα σε κάθε εντολή εκτέλεσης.
Το ΓΡΗΓΟΡΑ (εξ ορισμού σε αυτό τρέχει το περιβάλλον) δίνει χρόνο σε κάθε μπλοκ εντολών
Το ΓΡΗΓΟΡΑ ! δίνει χρόνο μόνο όταν ζητάμε ανανέωση οθόνης.
Παλαιότερα στο ΓΡΗΓΟΡΑ ! δεν λειτουργούσε το ESC ενώ τώρα λειτουργεί!
Π.χ. το παρακάτω στην αναθεώρηση 86 δεν σταματάει αν δεν πάει στο 10001 ακόμα και αν πατήσουμε Esc (δεν σταματούσε σωστά με Ctrl+C, παρόλο που έβγαινε το πλαίσιο διαλόγου για σταμάτημα, αλλά μόνο με Break)
set fast !
for i=1 to 10000 {
print i
}


Η ανανέωση οθόνης ρυθμίζεται μόνο μέσα σε τμήματα  (και συναρτήσεις εννοείται), και έχει τιμή 25 (0.025 του δευτερολέπτου).  Όσο μεγαλώνουμε την τιμή αυτή τόσο πιο αργά γίνονται οι ανανεώσεις, με συνέπεια να έχουμε γρηγορότερη εκτέλεση. (οι ανανεώσεις οθόνης τρώνε χρόνο από την εκτέλεση). Η εντολή ΑΝΑΝΕΩΣΗ χωρίς νούμερο ανανενώνει άμεσα την οθόνη. Η εντολή αυτή δεν υποστηρίζεται στην γραμμή εντολών. Μάλιστα όταν βγούμε στη γραμμή εντολών επανέρχεται ο ρυθμός στο 25.

Με τον χειρισμό της  ανανέωσης μπορούμε να κάνουμε animation στην οθόνη!  Επιπλέον ελέγχουμε τι παρουσιάζεται "σε μια κίνηση". Αν κάνουμε γραφικά και έχουμε ανανέωση σε κάθε γραμμή αφενός θα δούμε μια προς μια όλες τις γραμμές, αφετέρου θα αργήσει να τυπώσει!

Γ Κ




Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου

You can feel free to write any suggestion, or idea on the subject.