|
Что за способ синхронного чтения потока?
|
|||
---|---|---|---|
#18+
Разбирал ня днях декомпилированный проект (автор - стороняя организация), и наткнулся там на такой способ синхронного записи/чтения потока (NetworkStream, полученный от TcpClient): Код: c# 1.
или Код: c# 1.
Есть ли в этом какой-то особый смысл? Почему именно так, а не обычные синхронные Read/Write? (у автора проекта это узнать не получится - он неизвестен) Сомневаюсь, что это артефакт декомпиляции: JustDecompile, dotPeek, и ILSpy - все выдали вышеприведенное. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 06:21 |
|
Что за способ синхронного чтения потока?
|
|||
---|---|---|---|
#18+
WinterGraveyard, налицо шаблон Asynchronous Programming Model: пара методов Begin*/End*. Наверняка, это оптимизация, выполненная компилятором. В оригинале код выглядел примерно так: Код: c# 1. 2. 3.
А компилятор всё объединил. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 12:08 |
|
Что за способ синхронного чтения потока?
|
|||
---|---|---|---|
#18+
WinterGraveyard, С точки зрения программиста практически нет разницы, будет потрачено больше времени на создание дополнительного потока, запускающий поток так же будет ожидать исполнения, как и при синхронном вызове. С точки зрения исполнения системой, будет исполнен немного другой код. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 13:36 |
|
Что за способ синхронного чтения потока?
|
|||
---|---|---|---|
#18+
Спасибо, понятно. Получается, если я всё это перепишу на обычные синхронные Read/Write, ничего страшного не случится? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 14:44 |
|
Что за способ синхронного чтения потока?
|
|||
---|---|---|---|
#18+
WinterGraveyardСпасибо, понятно. Получается, если я всё это перепишу на обычные синхронные Read/Write, ничего страшного не случится? Одна из главнейших заповедей программиста - не трогай то, что работает :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 14:51 |
|
|
start [/forum/topic.php?fid=20&fpage=91&tid=1401767]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 139ms |
0 / 0 |