Domanda

I fare rendendo più richieste a un sito web. Come posso introdurre un ritardo tra le richieste per rallentare il mio processo? Esiste un metodo che mi permette di giusta causa il thread solo aspettare per X secondi prima di procedere?

È stato utile?

Soluzione

Sei alla ricerca di Thread.Sleep ?

Si noti che provoca il corrente filo a dormire - non bersaglio in un secondo diverso thread. Ma se hai un loop all'interno di un thread, rendendo più richieste, si potrebbe facilmente aggiungerlo per il ciclo per restringere la frequenza richiesta.

Il metodo Sleep è sovraccarico - una firma prende un TimeSpan e l'altro prende un numero di millisecondi. Personalmente mi piacerebbe in generale preferisco il primo, in quanto non lascia spazio ad ambiguità. Ad esempio:

Thread.Sleep(TimeSpan.FromSeconds(2));

è, ovviamente, chiede il filo a dormire per 2 secondi -. Non 2 minuti, 2 millisecondi etc

Altri suggerimenti

System.Threading.Thread.Sleep(x);

... dove x è il numero di millisecondi per dormire il filo.

Un'alternativa è quella di utilizzare un Timer e fare una richiesta ogni volta che viene generato l'evento Tick.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top