Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Потоки и асинхроность 
V
    Опции темы
DenWPF
Дата 7.12.2010, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



 smile 

Что такое потоки я представляю, понимаю и использую.

А вот что такое асинхронность мне сложно дается.

Кто то может на пальцах объяснить, чем отличаются потоки от асинхронности ? (если конечно можно их в одном контексте вообще ставить )

Вот к примеру такая задача:
Есть картинка каждые 10 сек она меняется на другую.
и есть такой же елемент только человек сам задает: интервал и папку откуда берутся картинки.

Не используя потоки. (timer из threading тоже не использовать это же тоже поток отдельный)
PM MAIL   Вверх
i2m
Дата 7.12.2010, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 4.5.2010

Репутация: нет
Всего: 1



DenWPF, http://sergeyteplyakov.blogspot.com/2010/1...enumerator.html  хороший цикл статей на тему асинхронности, после прочтения думаю все вопросы отпадут.
PM MAIL   Вверх
DenWPF
Дата 8.12.2010, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



хорошая статья но что то мне далось сложно и все равно ещё не понятно=( 
может что то по проще есть?


может кто то ответит когда нужно использовать асинхронность?



Это сообщение отредактировал(а) DenWPF - 9.12.2010, 00:49
PM MAIL   Вверх
neutrino
Дата 9.12.2010, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: 3
Всего: 62



Асинхронно - значит не синхронно smile , т.е. не по порядку. Именно это все и объясняет. Когда ты пишешь например несколько вызовов асинхронных функций, то функции в твоем потоке сразу возвращают значение (или void). Но выполнение каждой из етих функций происходит в другом потоке. Т.е. хоть ты их и вызвал по порядку, выполняться они будут "параллельно". 

Понятие callback - это просто кусок кода, который вызывается по какому-нибудь еvent-у, например окончание выполнения асинхронной функции. Т.е. вместо того, чтобы какую-то долгую операцию ждать синхронно, ты просто вызываешь ее асинхронно и передаешь callback, который вызовется по окончании. Таким образом ты можешь написать любой код.

Простейший пример асинхронной функции с callback:

Код

public void RunAsynchronously(Action action, Action callback)
{
ThreadPool.QueueWorkItem(() => {action(); callback();});
}



Может что напортачил, не лови меня на коде.



--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
DenWPF
Дата 9.12.2010, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



так вот меня это и отвлекает...это теже потоки, просто сделаны в более удобном виде?



PM MAIL   Вверх
CYBERDREAM
Дата 9.12.2010, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I think, there4 I am
***


Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand

Репутация: 11
Всего: 28



именно


--------------------
Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно)
Telegram, skype: kuchuk.artiom
PM MAIL WWW   Вверх
DenWPF
Дата 9.12.2010, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



Цитата(CYBERDREAM @ 9.12.2010,  10:49)
именно

это не сарказм ?

Асинхронность - это же самое что и потоки только реализованы более удобно.
PM MAIL   Вверх
neutrino
Дата 9.12.2010, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: 3
Всего: 62



Конечно это потоки. 


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
CYBERDREAM
Дата 9.12.2010, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I think, there4 I am
***


Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand

Репутация: 11
Всего: 28



Цитата

Асинхронность - это же самое что и потоки только реализованы более удобно.

определенно

Ассинхронные операции используют интерфейс IAsyncResult, с двумя методами - BeginInvoke,EndInvoke. 
и имеет несколько полезных свойств 


--------------------
Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно)
Telegram, skype: kuchuk.artiom
PM MAIL WWW   Вверх
DenWPF
Дата 9.12.2010, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



фух. спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0476 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.