Сообщение Re[7]: ThreadPool проблема зависания от 13.01.2015 7:10
Изменено 13.01.2015 7:11 ionoy
Здравствуйте, zoom-zoom, Вы писали:
ZZ>Сделал 1 потоком, но осталась проблема загрузки ЦП, Sleep решал проблему, может есть альтернатива более профессиональная?
Есть SpinWait, но тут уже зависит от того, насколько часто вам нужно читать данные.
А, вообще, загрузка данных с сервера это IO операция которую можно ждать через await.
Упрощённо, как-то так:
В таком случае вам не придётся создавать поток вручную.
ZZ>Сделал 1 потоком, но осталась проблема загрузки ЦП, Sleep решал проблему, может есть альтернатива более профессиональная?
Есть SpinWait, но тут уже зависит от того, насколько часто вам нужно читать данные.
А, вообще, загрузка данных с сервера это IO операция которую можно ждать через await.
Упрощённо, как-то так:
public Task StartReadingDataFrom(string url)
{
var client = new HttpClient();
while(true) {
var str = await client.GetStringAsync(url);
_receivedData.Enqueue(str);
}
}
В таком случае вам не придётся создавать поток вручную.
Re[7]: ThreadPool проблема зависания
Здравствуйте, zoom-zoom, Вы писали:
ZZ>Сделал 1 потоком, но осталась проблема загрузки ЦП, Sleep решал проблему, может есть альтернатива более профессиональная?
Есть SpinWait, но тут уже зависит от того, насколько часто вам нужно читать данные.
А, вообще, загрузка данных с сервера это IO операция которую можно ждать через await.
Упрощённо, как-то так:
В таком случае вам не придётся создавать поток вручную.
ZZ>Сделал 1 потоком, но осталась проблема загрузки ЦП, Sleep решал проблему, может есть альтернатива более профессиональная?
Есть SpinWait, но тут уже зависит от того, насколько часто вам нужно читать данные.
А, вообще, загрузка данных с сервера это IO операция которую можно ждать через await.
Упрощённо, как-то так:
public async Task StartReadingDataFrom(string url)
{
var client = new HttpClient();
while(true) {
var str = await client.GetStringAsync(url);
_receivedData.Enqueue(str);
}
}
В таком случае вам не придётся создавать поток вручную.