a blog for first time Mac users

Εφαρμογές (applications) κολλάνε – κρασάρουν

May 28th, 2011 0 comments

Σε κόλλημα μιας εφαρμογής, όταν μετακινήσετε τον κέρσορα πάνω από ένα παράθυρο της μεταβάλλεται σε πολύχρωμο τροχό ή σε “beach ball” αν προτιμάτε.

Τότε ναι μεν μπορείτε να μετακινήσετε το παράθυρο(α) της σε οποιοδήποτε σημείο της οθόνης, όμως η εφαρμογή δεν αποδέχεται καμία εγγραφή ή εντολή όπως κλείσιμο παραθύρου ή save ενός αρχείου. Ενώ με click στο Desktop, μετακινώντας δηλαδή την εφαρμογή στο παρασκήνιο το beach ball δεν είναι πλέον ορατό.

Σε εμφάνιση του beach ball λοιπόν, συνιστάται να περιμένετε λιγάκι. Η κάθε μια εντολή που δίδεται στην εφαρμογή αρχικά μπαίνει σε μια σειρά (queue) προτού επεξεργασθεί. Όταν λοιπόν η εφαρμογή είναι απασχολημένη με μια ρουτίνα που δεν επιτρέπει αποδοχή επιπλέον εντολών τότε εμφανίζεται έως και για αρκετά δεύτερα το beach ball και στη συνέχεια εκλείπει, οπότε δεν χρειάζεται να κάνετε κάτι.

Όταν όμως το beach ball επιμείνει, είναι κάτι που μπορεί να προκληθεί από πολλά και διάφορα αίτια που παρατίθενται στην συνέχεια.

Ενώ τα απρόσμενα κρασαρίσματα (quits) προκαλούνται κατά κύριο λόγο από αλλοίωση των LaunchServices ή/και του dydl’s shared cache, ή ενδεχομένως διότι η εφαρμογή τρέχει σε 32-bit (βήμα 5), ή από ασύμβατα περιφερειακά τρίτων κατασκευαστών.

Αντιμετώπιση :

Όταν λοιπόν το beach ball εμφανισθεί κατά την χρήση της εφαρμογής και επιμείνει, τότε προφανώς η εφαρμογή έχει κολλήσει οπότε μπορείτε να μετέλθετε αρχικά τις παρακάτω πρακτικές αρκετές από τις οποίες δεν θα την κλείσουν “βίαια” (force quit) και συνακόλουθα δεν θα χαθούν τυχόν unsaved εργασίες (αυτό αφορά στα βήματα 1, 2 και ίσως 3).

1. Force sleep το σύστημα

Το OS X διαθέτει διάφορα background processes που συνεργάζονται με τις εφαρμογές. Αναγκάζοντας λοιπόν το σύστημα να μπει σε sleep mode, τα processes αναγκάζονται να μεταβάλουν την διάδραση τους και να αποδεσμεύσουν την εφαρμογή. Για να το κάνετε πατήστε τα πλήκτρα command-alt-Eject και αφήστε το μηχάνημα σε sleep mode για μερικά λεπτά της ώρας ώστε να μπορέσουν υπηρεσίες δικτύου και περιφερειακά να κάνουν προσωρινή παύση και να μεταβάλουν την ενεργό τους κατάσταση. Στη συνέχεια ξυπνάτε το μηχάνημα και βλέπετε αν το θέμα εξέλιπε.

2. Relaunch το Dock & τον Finder

Το OS X διαθέτει αρκετές μόνιμα ενεργές εφαρμογές που μπορεί να συνεργάζονται με την επίμαχη εφαρμογή και πιθανόν να συμβάλλουν στο θέμα. Πολλές από αυτές τις μόνιμες εφαρμογές είναι σημαντικά background services όπως ο window manager για παράδειγμα.

Όμως το Dock και ο Finder είναι πιο ανεξάρτητα και τα κάνετε relaunch χωρίς να είστε σε θέση να γνωρίζετε αν εμπλέκονται ή όχι στη λειτουργία της επίμαχης εφαρμογής. Για να κάνετε relaunch το Dock λοιπόν πηγαίνετε /Applications/Utilities, ανοίγετε το Terminal, paste την εντολή και Enter.

killall Dock

Για να κάνετε relaunch τον Finder, με πατημένο το πλήκτρο alt, click το εικονίδιο του στο Dock και επιλέγετε Relaunch, οπότε θα κλείσουν και όλες οι ανοιχτές εφαρμογές. Μεριμνάτε λοιπόν για save τυχόν εργασιών.


.

Σημείωση : όταν ο Finder δεν ανταποκρίνεται, ενδέχεται να μην είναι πλέον εφικτή η εκτέλεση των εντολών. Θα πρέπει λοιπόν να κάνετε forced shut down με cοmmand-alt-ctrl-eject, ή με το power button, οπότε θα χαθούν τυχόν unsaved εργασίες.

3. Διαγραφή του Cache folder

Click το Desktop ώστε να έρθει στο προσκήνιο ο Finder. Πατάτε τα πλήκτρα command-shift-L, θα αναδυθεί ο φάκελος Library > Caches και σύρετε στον κάδο το αρχείο τον φάκελο της εμπλεκόμενης εφαρμογής που θα αναδημιουργηθεί με το relaunch της.

4. Αλλοιωμένα .plist files

Είναι κύριοι πρόξενοι τέτοιων καταστάσεων. Περισσότερα στον οδηγό.

5. Αλλοιωμένα Launch Services & dydl’s shared cache

Σε μερικές περιπτώσεις, εμπλέκονται και στα απρόσμενα quits, ή σε κρασαρίσματα κατά το άνοιγμα (launch) τους. Click το Desktop ώστε να έρθει στο προσκήνιο ο Finder. Πατάτε τα πλήκτρα command-shift-L, θα αναδυθεί ο φάκελος Library > Caches και σύρετε στο κάδο files που αρχίζουν με com.apple.LaunchServices. Πηγαίνετε /Applications, ανοίγετε το Terminal και copy/paste την εντολή, ώστε να γίνει rebuild του dydl’s shared cache. Θα ζητηθεί πιστοποίηση ενώ ενδέχεται να εμφανιστούν κάποια άνευ σημασίας warnings.

sudo update_dyld_shared_cache -force

Update : Περισσότερα για τα Launch Services στο άρθρο.

Update : Μετά από update σε OS X 10.8.2, μπορεί κάποιες εφαρμογές να κρασάρουν με το άνοιγμα (launch) τους, ενώ κοινό τους στοιχείο είναι ότι τρέχουν σε 32-bit. Για να το διαπιστώσετε πηγαίνετε /Applications folder, επιλέγετε το εικονίδιο της εφαρμογής και cmd-I.

Για αντιμετώπιση του θέματος μπορεί να βοηθήσει ο καθαρισμός του dydl’s shared cache ή ένα restart σε Safe Boot, ώστε να τρέξουν κάποιες επισκευαστικές ρουτίνες του OS X.

6. Επανεγκατάσταση της εφαρμογής

Είναι μια σχετικά απλή διαδικασία, είτε μέσω του συνοδευτικού CD/DVD ή με download από τη σελίδα του developer. Για restore εφαρμογών του OS X, δείτε τον οδηγό.

✓ Σε αλλοίωση του preference (.plist) file του menu bar, μπορεί να μην εμφανίζονται πλέον επιλεγμένα εικονίδια του συστήματος όπως W-Fi, μπαταρία, ημερομηνία & ώρα. Τότε, όποια εφαρμογή προσπαθήσετε να ανοίξετε μπορεί να κρασάρει. Πάλι στον φάκελο Library > Preferences, σύρετε στον κάδο το αρχείο com.apple.systemuiserver.plist και restart το Mac.

✓ Δείτε το άρθρο αλλοίωση των /etc/host configuration files, ενδέχεται να σχετίζεται.

Τελευταία ενημέρωση· 4.4.2018

Related post : Συνοδευτικές εφαρμογές του OS X κρασάρουν κατ’ επανάληψη.

Leave a Reply

Your email address will not be published. Required fields are marked *