Emacs su Windows 7 è molto lento quando il computer è al di fuori della rete aziendale


8

Sto usando GNU Emacs 24.3 su Windows 7 e normalmente non ho problemi di velocità / reattività.

Sto lanciando Emacs con runemacs.exe

Tuttavia, quando viaggio e cerco di connettermi alla mia rete aziendale tramite VPN (o semplicemente lavorando offline senza una connessione alla rete aziendale), Emacs spesso diventa incredibilmente lento - potrebbero essere necessari alcuni minuti per aprire un buffer e semplicemente non lo fa rispondere ai comandi da tastiera.

(Sono ancora molto interessato a una soluzione) Tutti i file di testo e di configurazione pertinenti vengono salvati nella mia directory utente C:\Users\myusername.domainname\Documentsche si trova sul disco rigido locale (quindi non dovrebbe accedere ai server remoti), ma mi chiedo se Windows 7 potrebbe provare a sincronizza quei file con un server

Sto anche usando la funzione "file offline" per altre directory e mi chiedo se questo potrebbe avere un effetto sul mio problema.

Il problema si verifica non solo quando si utilizza la VPN, ma anche quando il computer è solo offline e non connesso alla rete aziendale.


1
Poiché "Il problema si verifica non solo quando si utilizza la VPN, ma anche quando il computer è appena offline e non connesso alla rete aziendale" non è chiaro che la VPN abbia qualcosa a che fare con il problema.
Joe Corneli,

Che ne dici di usare l'ultima versione pubblica di Emacs invece della 24.3? C'è un motivo per provare a risolvere una versione precedente di Emacs quando è disponibile una versione stabile più recente?
elenco delle leggi del

@lawlist: grazie, penso che attualmente sto usando Emacs 24.5, lo controllerò domani quando torno al computer. Ad ogni modo, non dovrebbe essere possibile in tutte le versioni stabili di Emacs funzionare senza alcuna impostazione di rete?
MostlyHarmless

1
Perché Emacs dovrebbe effettuare richieste DNS? Perché la lentezza sarebbe dovuta alle richieste DNS piuttosto che a qualche altro tipo di accesso alla rete?
Gilles 'SO- smetti di essere malvagio' il

1
lists.gnu.org/archive/html/bug-gnu-emacs/2012-10/msg00230.html offre alcuni suggerimenti e (setq w32-get-true-file-attributes nil)potrebbe essere d'aiuto.
Luís Oliveira,

Risposte:


3

Il motivo di questo problema può essere l'utilizzo della recentfmodalità. Devi disabilitare la pulizia dei file non disponibili usando il seguente comando nel tuo ~ / .emacs (o ~ / .emacs.d / init.el se lo stai usando):

(setq recentf-auto-cleanup 'never)

grazie mille - sembra promettente, ma non uso la recentfmodalità e non sono riuscito a trovare tale opzione nel mio .emacs o init.el
MostlyHarmless

1
Sto riscontrando lo stesso problema di OP e questo non ha fatto nulla per aiutarmi.
Paul B

Non riesco a pensare a nessuna ragione per cui la recente avrebbe avuto alcun impatto. È semplicemente un elenco di file recenti. Non vengono ripristinati o controllati,
RichieHH

Un file recente di grandi dimensioni può effettivamente introdurre una latenza intermittente, ma questo non sembra essere il problema descritto da OP.
InHarmsWay


2

Molte possibili ragioni, due in cima alla mia testa (ho avuto questi problemi in passato).

  1. Potresti avere una cartella remota mappata in Windows e quando sei fuori dalla rete locale potrebbe rallentarti molto (scendere dalla VPN non aiuta molto, in realtà potrebbe peggiorare le cose poiché Windows continuerà a cercare di raggiungerlo fermato solo dai timeout.) Le versioni più recenti di Windows sembrano gestire un po 'meglio, ma comunque. Prova a eseguire net use * /deleteun prompt dei comandi e vedi se aiuta.

  2. Controlla se stai usando tramp(ne dubito dal momento che sei su Windows, ma sto usando Windows anche con Linux e lo uso trampquindi non è del tutto fuori discussione.) In tal caso, prova a eseguire tramp-cleanup-all-connectionsquando sei fuori dalla rete.

Se tutto questo o qualcos'altro suggeriscono le persone qui, potrebbe non essere necessario eseguire una risoluzione dei problemi più approfondita. Lo strumento migliore che ho trovato per questo è Process Monitor di Sysinternals ( https://technet.microsoft.com/en-us/sysinternals/bb896645 ). È una bestia complessa da affrontare e richiede almeno una conoscenza di base del sistema operativo Windows, ma è in grado di eliminare completamente le congetture dal processo e azzerare l'autore del reato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.