Che cos'è questo "In attesa dell'operazione in background" in Visual Studio 2012?


96

Occasionalmente, ma abbastanza spesso, senza una ragione apparente, VS 2012 si blocca con un dialogo che dice: "In attesa del completamento di un'operazione in background". Ad esempio, questo può accadere durante una semplice modifica del vecchio codice, non quando si richiama esplicitamente alcun comando IDE.

Cosa causa questo e c'è qualcosa che posso fare al riguardo?

Uso ReSharper 7 e non sono l'unico che conosco a sperimentarlo.


4
Questo è un po 'a sinistra, quindi farà un commento piuttosto che una risposta, ma se ottengo questo è normalmente perché ho una finestra RDC aperta su un altro computer e ho recentemente inserito qualcosa in quella finestra RDC negli appunti (tramite un copia / taglia), a volte scoprirai che sta attualmente tentando di trasferirlo nella mia macchina locale ... e quindi il mio VS sta aspettando che venga completato. La chiusura della RDC normalmente la risolve
caduta libera il

2
Grazie @freefaller, ma non ho mai connessioni remote attive.
ProfK

3
Hai il problema esatto! È davvero davvero fastidioso ... potresti trovare la fonte del problema? (PS non ho ReSharper)
Mahmoud Moravej

1
Ho anche il problema in VS2010, quindi questo non è un problema Vs2012. Per me accade quando apro una soluzione che ha molti file sorgente aperti. Dopo aver ucciso il VS con ProcExp, VS non apre tutti i file e il problema è scomparso.
magicandre1981

7
Ci sono momenti in cui vorrei semplicemente andare all'ufficio Microsoft più vicino ed eseguire un massacro in Texas per questo. Sto scrivendo pacificamente un codice, i pensieri continuano nella mia testa quando BAM! uno schiaffo in faccia "operazioni in background, duh".
Filip Vondrášek

Risposte:


62

Avevo lo stesso problema, specialmente nelle pagine cshtml. Ho trovato questa pagina: https://devblogs.microsoft.com/aspnet/visual-studio-11-beta-razor-editor-issue-workaround che suggerisce di modificare l'opzione di rientro in Strumenti> Opzioni> Editor di testo> HTML> Tab su Smart invece di Block . Nel mio caso era già impostato su Smart e cambiarlo di nuovo in Block ha risolto il problema.

Aggiornamento: mi sbagliavo, questo non ha risolto il dialogo, lo ha solo ritardato finché non l'ho copiato o incollato. Quello che alla fine ha funzionato per me è stato andare su Strumenti> Impostazioni di importazione ed esportazione ...> Ripristina tutte le impostazioni .

Possibile domanda correlata: Visual Studios 2010 - Asp.net MVC 4 Beta - lunghi ritardi nell'incolla e frequenti arresti anomali


26
Ho votato positivamente e ho intenzione di commentare. L'aggiornamento in questa risposta ha risolto il problema Copia / Incolla per me con VS2012, un problema con cui ho lottato per oltre due settimane cercando di capire. Notare che ho selezionato "Sviluppo Web (solo codice)" nell'ultima parte della procedura guidata Ripristina tutte le impostazioni. SI PREGA DI FAVOREVOLE IN MODO CHE QUESTA RISPOSTA RISULTA MEGLIO NELLE RICERCHE.
REMESQ

2
Quello che ha detto Remesq ha funzionato per me. Ha risolto il problema all'istante. Grazie.
draconis

1
+1 Per me non potevo incollare in file "aspx" senza il messaggio "In attesa di uno sfondo ...". Andando su Strumenti> Impostazioni di importazione ed esportazione> Ripristina tutte le impostazioni e infine scegliendo Sviluppo Web quando è stato chiesto quale raccolta ripristinare, l'ho risolto per me. Grazie.
Anthony Walsh

Ripristina tutte le impostazioni funziona per un po ', ma ogni tanto ho ancora questa fastidiosa finestra modale arg !!!!
coffekid

2
+1 Con Resharper 7 il passaggio a Strumenti> Opzioni> Editor di testo> Impostazioni HTML per bloccare da "intelligente" ha risolto il problema per me
Tahbaza

32

È una diagnosi molto generica. Viene attivato da COM, ampiamente utilizzato in Visual Studio per implementare l'estensibilità. Il trigger sottostante è l'interfaccia IMessageFilter. Il trigger si verifica quando COM effettua il marshalling di una chiamata al metodo a un altro thread e quella chiamata non viene completata per 60 secondi.

C'è poco valore nella notifica effettiva, ti sta dicendo qualcosa che già conosci. Quando sono trascorsi 60 secondi, in genere hai già notato che le cose non funzionano bene. A corto di una minima conoscenza utile che Visual Studio non è in realtà completamente morto. La chiamata deve tuttavia essere completata prima che VS sia nuovamente utilizzabile. C'è poco che puoi fare se non toccare il piede e aspettare.

Questo problema è quasi sempre causato da un componente aggiuntivo. Resharper è sicuramente un buon candidato. Trovi il piantagrane disabilitando i componenti aggiuntivi uno per uno finché il problema non scompare. È il tipo di problema comune con le nuove versioni di Visual Studio, i fornitori di componenti aggiuntivi impiegano un po 'di tempo per risolvere i bug e gli intoppi. Contatta il fornitore per assistenza e in generale cerca aggiornamenti che potrebbero risolvere il problema.


7

L'eliminazione del file "suo" delle soluzioni ha funzionato per me.


1
Sono arrivato a questo stato dopo aver cambiato molte volte tra i rami in git. L'eliminazione del file .suo per il progetto lo ha fatto anche per me
agarcian

6

Avevo lo stesso problema e nel mio caso era DevExpress.

Sembrava bloccarsi Visual Studio ogni volta che eseguivo un'operazione di copia o di taglio, facendo apparire il messaggio:

"In attesa del completamento di un'operazione in background".

È venuto fuori che in realtà stava svolgendo un'attività una tantum in background e ci è voluto un po 'per farlo (oltre 5 minuti).

Forse se avessi aspettato normalmente, sarebbe potuto sparire, ma ciò che alla fine lo ha risolto è stato visualizzare la casella degli strumenti (era nascosta / compressa), che a sua volta ha mostrato una finestra che diceva:

"aggiunta di [SomeDevExpressAssemblyNameHere] .dll"

questo continuava ad aggiornarsi con il nome di ogni dll richiesta da DevExpress per popolare la barra degli strumenti.

In questo modo ho potuto vedere lo stato di avanzamento dell'operazione e al termine ho potuto usare di nuovo copia / taglia incolla come al solito.

Spero che questo ti aiuti.


Questo è successo a me dopo aver installato una nuova versione di CodeRush e aver disinstallato quella vecchia. Dopo aver semplicemente aspettato (moooolto) tempo VS.Net ha semplicemente finito quello che stava facendo.
CodingBarfield

Grrrrr - anche questo era il mio problema, la mia cassetta degli attrezzi era nascosta quindi non potevo vedere cosa stava succedendo.
Fergal Moran

Un altro utente DevExpress qui, trovo che lo faccia dopo ogni aggiornamento di DevExpress. Ci vogliono circa 5 minuti, quindi viene risolto per sempre.
KingCronus

5

Per me la soluzione era aggiornare Web Essentials 2012 alla versione 1.8.

La versione problematica era la 1.6


Provo a disabilitare WebEssentials ma il problema persiste. Quando non è installato il problema è risolto.
Riccardo Bassilichi

5

Strumenti> Opzioni> Editor di testo> HTML> Schede -> Identificazione -> Nessuna impostazione ha risolto questo problema per me.


1
Anche il passaggio a "blocco" risolve il problema.
Jenny O'Reilly

3

Questo lo ha risolto per me:

Strumenti> Opzioni> Editor di testo> HTML> Varie

Deseleziona l'opzione "Identificazione automatica degli elementi all'incollaggio nella vista sorgente"

Pubblicherò un aggiornamento se il problema si ripresenta.


2

Ho avuto questo problema per un paio di giorni, ho provato a disinstallare e reinstallare il mio visual studio 2012 ultimate edtion SP3 ... Ancora non funzionava. Quindi ho cancellato tutte le mie estensioni (strumenti git per VS 2012 e downloader di pacchetti Nuget), ho riavviato il mio VS e ha funzionato di nuovo come un fascino! Spero funzioni !

In bocca al lupo!


1

Ho riscontrato questo problema durante l'esecuzione di Visual Studio in una macchina virtuale: Virtual Box 4.2 in esecuzione su Mac OS X Mountain Lion, che ospita una nuova installazione di Windows 7 con nient'altro installato tranne Visual Studio. Ho scoperto che il problema era causato da 2 problemi separati.

In primo luogo, il mio progetto era su una cartella condivisa dal sistema operativo host. In altre parole, sul guest Windows, il mio progetto è apparso su un'unità di rete. Quindi l'apertura del progetto in Visual Studio da un'unità di rete sembrava causare questo problema perché il problema è andato via quando ho copiato il progetto sull'unità C della VM Windows e l'ho aperto in Visual Studio dalla copia sull'unità C.

In secondo luogo, ho iniziato a riscontrare di nuovo il problema quando il disco rigido della macchina virtuale si stava riempiendo. Avevo circa 1 GB di spazio libero disponibile sul disco rigido. Quando ho aumentato le dimensioni del disco rigido sulla macchina virtuale, il problema è stato risolto.


1

Ho appena riprodotto un problema simile con il componente aggiuntivo Codemaid. Ho trovato questa conversazione :

Ci sono molti dettagli in questo numero, ma per cercare di ricapitolare il problema è che l'API C ++ VS2012 ha introdotto un problema di deadlock quando si accede all'API da un thread dell'interfaccia utente (ad esempio un contesto WPF come Spade). Non era un problema in VS2010 e Microsoft lo ha risolto andando avanti per VS2013 ma non lo applicheranno per VS2012.

Sembra indicare che dovrebbe essere in arrivo una correzione (per Codemaid):

Tieni d'occhio questo thread per la risoluzione del problema in corso. Si collega a quella riscrittura più ampia, quindi ho iniziato a costruirla aggiungendo prima molti unit test per garantire che la funzionalità rimanga coerente dopo le modifiche.


1
È stato risolto ora (versione 0.7.0). Questa è stata la causa della mia versione di questo, quindi grazie!
dlanod

1

Per me sembrava essere correlato alla sintassi del rasoio, dato che l'avevo solo su un particolare file.

Ad esempio, se metto il seguente codice in una riga ho avuto il problema descritto.

@section BodyClassName {note}

Ma quando si mette la parentesi di chiusura sulla riga successiva il problema è scomparso

@section BodyClassName {note
}

Cordiali saluti

Stijn


1

Lungi dall'essere una soluzione ideale, ma per favore provando a eseguire Visual Studio in modalità amministratore ho provato praticamente di tutto, e questa era l'unica cosa che ha funzionato per me


1

Apri Visual Studio, crea una nuova applicazione MVC, chiudi la nuova applicazione, apri la vecchia applicazione e funziona!


Lo stesso problema di OP è emerso dal nulla. VS2013 sul progetto WebForms. La tua procedura ha risolto il problema.
secretwep

1

Controlla se IIS o un altro processo (forse BizTalk) sta bloccando le tue DLL / riferimenti
Uccidi / ferma IIS o l'altro processo se lo è



0

penso di aver trovato un indizio! Ogni cosa è terminata con dcomcnfg.exe!

Aprilo e vai nel seguente percorso:

Servizi componenti> computer> mio computer> dcom config

dopo aver cliccato su dcom vedrai molti avvisi che dipendono dalla quantità di componenti sul tuo pc.

Fare clic su Sì in ciascuna finestra di messaggio per aggiungere il record corretto per dcom.


1
Come hai ristretto il campo a DCOM? Che sistema operativo utilizzi? Non vedo alcun avviso sulla mia scatola Win 7 x64.
Mrchief

0

Ho scoperto che VS carica anche i pacchetti durante l '"operazione in background". Puoi rimuovere le estensioni non necessarie per rendere l'operazione più veloce.


0

L'ho risolto settimane fa dopo aver disattivato la sincronizzazione degli appunti di TeamViewer 8! ora appare indietro senza motivo, quindi ho provato a ripristinare tutte le impostazioni e ha funzionato per me.



0

Per me, è stato il componente aggiuntivo di Resharper ad aprire una finestra di dialogo che non veniva visualizzata. Ho trovato solo l'icona della finestra di dialogo nel menu delle icone nascoste sulla barra delle applicazioni. Quando mi sono sbarazzato della finestra di dialogo, Visual Studio è tornato alla normalità immediatamente.

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.