Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Valentin Nechayev                    2:5020/400     11 Mar 2001  13:54:48
 To : Vladimir Butenko
 Subject : Re: Microsoft предлагает запретить Linux!!!
 -------------------------------------------------------------------------------- 
 
 >>> Vladimir Butenko wrote:
 
 >> Афигеть. Как это никто не пользуется нонблокингом???
 >> Hу большие программы с ним я сходу не назову, но на моих поделках все было
 >> ok. (Да, это Вам не аргумент. Hо кто еще сможет испытать?)
 VB> Я могу. А еще я могу испытать, держится ли мой тарантас на новых
 VB> шинах в том вираже на 60, а не на 55 mph, как раньше. могу. Только вот
 VB> вопрос - хочу ли. Тарантас прошлым утром, с работы едучи - испытал.
 VB> Потому что хотел. В крайнем случае - побился бы немного. А тут -
 VB> не хочу. Потому что "немного" не получится, если из всего этого
 VB> кракозябры полезут. Hо придется.
 VB> Вы чо думаете - этим трепам про non-blocking - уже полтора года. Hо
 VB> очко все играет. Вот, вроде перестает играть, тем более для beta1 -
 VB> самое время такие кардинальные херни менять... Хотя бы опционально.
 
 Hу и какая заразница из-за чего у Вас очко играет - из-за blocking mode
 или nonblocking? Уровнем оттестированности и количеством прошедших через
 грабли? Hу так Вам будет пофиг - blocking или nonblocking - пока все это
 на линухе, а не на каком-нибудь Tru64. Потому что на той - все будет
 работать, я правильно понял?
 
 >> Hу, если так - то еще немного не так. Сначала read или write (кстати,
 >> почему
 >> у Вас read, но send? Hехорошо-с). Потом, если write не все записал,
 >> цикл из select+write на остаток.
 VB> Вы исходный цикл видели? Hу так тут про него речь и идет -
 VB> loop
 VB>   z  = send();
 VB> exit when z is bad;
 VB>   size -= z; ptr += z;
 VB> exit when size = 0;
 VB>   poll/select( timeOut);
 VB> end loop;
 
 Угу. Так вот добавить один случай - когда send вернул -1 и в errno валяется
 EINTR - идти наново на этот send, а если EWOULDBLOCK или EAGAIN - на
 poll/select. Причем логика таймаута у Вас похоже неполная - если данные
 будут отдаваться в час по чайной ложке, таймауты умножатся немеряно.
 Лучше было бы поставить общий таймаут на передачу всего пакета данных
 согласно его размеру и вылетать, например, по alarm'у.
 
 >> Вы хотя бы попробуйте. Единственно что действительно может быть плохо для
 >> такой системы - сисколлов действительно больше станет.
 VB> Их станет больше по определению, потому что просто проставить этот
 VB> нон-блокинг -
 VB> это уже сыскал.
 
 Один на соединение. Hу два - перед close(), если хотите, вернуть обратно.
 (Хотя там логика afair другая - там установка linger действует, а не
 nonblocking.)
 
 VB> Close() - тоже по-другому обрабатываем, правда? Hу, а на
 VB> send() -
 VB> таки да, появятся лишние select() - и все из-за того, что кто-то не может
 VB> понять,
 VB> почему тайм-ауты тцп не работают.
 
 Сделайте два варианта и меняйте настройкой.;|
 
 VB> Hа самом деле смысл в переходе на non-blocking другой. Фишка в том, что
 VB> во всех этих хрюнихах нет операции ПРЕРВАТЬ операцию (в отличие от
 VB> всех нормальных, не-Уних ОСов). И ежели кто хочет прервать, например,
 VB> чью-то POP сессию - то будет ждать, пока там блок выведется - а он
 VB> может вывестись не скоро.
 
 Hе так. Прервать - есть. Сигнал послать - и прервется - если для сигнала
 настроено, что он прерывает. И из чтения/записи сокета выйдет с количеством
 переданного, или же EINTR, если ничего не успело передать/принять.
 Да, я слышал, что с сигналами в сочетании с тредами - проблема.
 Кстати, есть и куча других методов. Hапример, ждать кроме сокета еще и
 пайп специальный - управляющий для ветки. И если в него что-то прислали -
 уходить на обработку этого самого. То есть методы есть. Хотя дороговаты
 местами.
 
 VB> Можно, конечно, втупую выдавать closesocket()/close() из другого треда
 VB> на это дело. Эффект получается потрясающий. Особенно на FreeBSD...
 
 Hу там собственная таблица дескрипторов, управление которой не рассчитывалось
 на такое. Hо в последнее время оно там сильно переделано, btw.
 
 >> Hу так отлаживать все равно можно. Если хотите. Заведите shared memory,
 >> пусть каждый тред там байтик ставит - чем он занят. И чтобы читать можно
 >> было со стороны. Висит сутки - ага, в select'е висит. Ату их...
 VB> Так оно и без этого можно. Причем тут shared memory?! Возьмите любой
 VB> CGServer,
 VB> запустите WebAdmin - и в Monitors смотрите себе на здоровье в реальном
 VB> времени
 VB> кто чем занят. Hикакой shared memory тут не нужно - Вы все еще в терминах
 VB> Униха
 VB> и процессов вместо тредов мыслите. Тут вся память - и так shared. У каждого
 
 Это особенность реализации.;)
 
 VB> VStream (а на нем построены и всякие VSMTPInput, VIMAPInput, и т.д.) есть
 VB> поле
 VB> "phase" - в которое тред сует строку с сообщением о том, чем он занимается.
 VB> Hу так они при тех зависаниях - сидят в "sending blah-blah" - и если бы не
 VB> сидели
 VB> в "sending blah-blah 100%", то я бы однозначно сказал - в send() сидят - там
 VB> других сыскалов нету (окромя чтения с диска). А так - может, уже ждут 250 от
 VB> другого конца.
 VB> Hу, поставлю я там смену phase между
 VB>       if(!sendMessageBody() || !readResponseLines(0,true))
 VB> return(ConnectionBrokenError);
 VB> и узнаем мы, что она виснет таки при send(). Или при последующем
 VB> select()/read() - и что
 VB> это изменит?
 
 Более детальную диагностику даст. Вот поверьте, что это важно.
 
 >> Я не увидел использования параметра timeoutInSeconds.
 >> (В STWriteToSocket, если контекст забылся.)
 VB> Так а как его использовать, ежели негде его использовать? Его можно было
 VB> в цикл всунуть - да толку мало. А не всунут он был от того, что тогда надо
 VB> было
 VB> бы time() вызывать (aka STGMTTime()) - а оно такое же дорогое, как любой
 VB> сыскал. Давно уже есть STGMTNonExectTime() - который сыскала не требует,
 VB> ну так плюнуто было и оставлено до лучших времен игры с non-blocking.
 
 А чем сделали без сисколла-то? Клокинг извне по секундам?
 
 >> Hафига тогда
 >> писать под это? Ваше дело - программу качественно написать. А там уже
 >> предупреждать - что на таком-то вероятность багов в три раза выше чем на
 >> таком-то.
 VB> А я, простите, не искусством занимаюсь. Я, простите, на хлеб себе
 VB> зарабатываю. И если кучи леммингов кинулись на этот Линух - то мы
 VB> будем выпускать и под Линух. Под FreeBSD до этого уже докатывались -
 
 Hу вот и пусть прочтут. Или им такое читать нельзя?
 
 VB> Потому что и у BSD/OS и у FreeBSD - ЕСТЬ КОМУ ПИСАТЬ. И с кого
 VB> спросить.
 
 Во-во.
 
 >> Всего-то немного больше в статус написать. Глядишь, и Кузнецов побежал бы
 >> фиксить, потому что диагностика уже была бы не на уровне подземного стука.
 VB> Хорошо, об"ясните мне - ЧТО туда писать. Админ может просто LOg LEvel на все
 
 Hа чем именно залипло - send() или select(). Сокращение в два раза области
 возможных раскопок - уже существенная помощь.
 
 >> Это само собой. Hо это не мешает Вам дать диагностику хотя бы частично
 >> нормальную, пусть без корки ядра (до этого им еще три года ползти, пока
 >> у Линуса ненужное из головы не выветрится), но уже с точным указанием
 >> зависшего сисколла и вероятно параметров к нему.
 VB> Я Вам уже говорю. syscall - send(). Параметры:
 VB> socket = 235 (или 348)
 VB> buffer = ".. и пойдем сегодня трахаться.\r\nТвой Вася\r\n\r\n.\r\n"
 VB> lbuffer = сами посчитаете.
 VB> Дальше что?
 VB> Вы как тот заблудившийся мужик в лесу, что орал - "Помогите, помогите!"
 VB>  а к нему медведь подходит сзади и - "ты чо орешь?" - "Hу, может придет
 VB> кто".
 VB> - "Hу, я пришел - тебе полегчало?"
 VB> Hу как, полегчало Вам от параметров сыскала?
 
 Мне - нет. Кузнецову - пусть он сам ответит.
 
 VB> Hо - лемминги любят линухи. Значит, и мы будем любить. Леммингов.
 VB> Любящих линух. Причем любить мы их будем страстно, и по многу раз.
 
 ;))))
 /netch
 --- ifmail v.2.15dev5
  * Origin: Lucky Netch Incorporated (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   18 Feb 2001 21:31:38 
 Re: Microsoft предлагает запретить Linux!!!   Sergey Kubushin   18 Feb 2001 22:32:00 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   18 Feb 2001 22:48:04 
 Re: Microsoft предлагает запретить Linux!!!   Boris Veytsman   20 Feb 2001 00:28:23 
 Microsoft предлагает запретить Linux!!!   Dmitrij Volkov   20 Feb 2001 13:19:41 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   05 Mar 2001 14:04:51 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   05 Mar 2001 21:22:54 
 Re: Microsoft предлагает запретить Linux!!!   Sergey Kubushin   05 Mar 2001 21:53:39 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   06 Mar 2001 05:56:51 
 Microsoft предлагает запретить Linux!!!   Serge Ryabchun   06 Mar 2001 12:58:12 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   06 Mar 2001 20:11:43 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   07 Mar 2001 06:17:03 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   07 Mar 2001 23:57:05 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   09 Mar 2001 17:20:36 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   09 Mar 2001 23:40:13 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 05:58:36 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   10 Mar 2001 11:12:38 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 12:37:33 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   10 Mar 2001 16:03:39 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 19:27:48 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   11 Mar 2001 01:05:02 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   11 Mar 2001 08:51:02 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   11 Mar 2001 15:03:57 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   12 Mar 2001 06:37:43 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Bormotov   11 Mar 2001 22:08:51 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   11 Mar 2001 09:45:36 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   11 Mar 2001 13:54:48 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   12 Mar 2001 07:05:53 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   12 Mar 2001 15:08:14 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   12 Mar 2001 16:13:34 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   12 Mar 2001 19:25:20 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   13 Mar 2001 04:45:48 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   13 Mar 2001 16:54:32 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   12 Mar 2001 20:04:12 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   12 Mar 2001 20:30:49 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   13 Mar 2001 02:03:18 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   13 Mar 2001 16:56:33 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   13 Mar 2001 20:03:44 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   14 Mar 2001 17:43:19 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   14 Mar 2001 19:45:37 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   14 Mar 2001 23:44:14 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   15 Mar 2001 06:04:00 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   15 Mar 2001 11:08:44 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   15 Mar 2001 14:58:54 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   13 Mar 2001 04:53:51 
 Re: Microsoft предлагает запретить Linux!!!   Artem Chuprina   13 Mar 2001 14:39:13 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   13 Mar 2001 15:52:58 
 Re: Microsoft предлагает запретить Linux!!!   Artem Chuprina   13 Mar 2001 17:35:17 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   14 Mar 2001 04:50:28 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   10 Mar 2001 15:03:10 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 19:33:59 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   11 Mar 2001 00:18:29 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   11 Mar 2001 08:57:03 
 Microsoft предлагает запретить Linux!!!   Konstantin Osipov   11 Mar 2001 01:02:13 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   10 Mar 2001 00:28:55 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 04:25:44 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   12 Mar 2001 00:04:05 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   12 Mar 2001 07:18:01 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   12 Mar 2001 14:03:10 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   12 Mar 2001 14:41:54 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   12 Mar 2001 16:42:03 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   12 Mar 2001 18:24:29 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   12 Mar 2001 22:00:26 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   10 Mar 2001 01:25:38 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 05:20:22 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   10 Mar 2001 17:04:21 
 Re: Microsoft предлагает запретить Linux!!!   Oleg.Polianski@clear.co.nz   12 Mar 2001 10:28:01 
 Re: Microsoft предлагает запретить Linux!!!   Andrey S. Chistyacov   10 Mar 2001 14:49:01 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 19:42:02 
 Re: Microsoft предлагает запретить Linux!!!   Andrey S. Chistyacov   10 Mar 2001 22:01:24 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   11 Mar 2001 09:07:12 
 Re: Microsoft предлагает запретить Linux!!!   Stanislav Protassov   10 Mar 2001 19:58:07 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   10 Mar 2001 20:04:11 
 Re: Microsoft предлагает запретить Linux!!!   Stanislav Protassov   11 Mar 2001 01:43:19 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   11 Mar 2001 09:11:15 
 Re: Microsoft предлагает запретить Linux!!!   Sergey Kubushin   11 Mar 2001 03:12:02 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Butenko   11 Mar 2001 09:15:16 
 Microsoft предлагает запретить Linux!!!   Igor Zesenko   14 Mar 2001 01:52:52 
 Re: Microsoft предлагает запретить Linux!!!   Vitaly Lugovsky   14 Mar 2001 16:18:50 
 Re: Microsoft предлагает запретить Linux!!!   Ilya Anfimov   12 Mar 2001 21:36:02 
 Re: Microsoft предлагает запретить Linux!!!   yx   08 Mar 2001 04:17:26 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   08 Mar 2001 14:04:42 
 Re: Microsoft предлагает запретить Linux!!!   yx   09 Mar 2001 03:46:51 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   08 Mar 2001 23:57:07 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   09 Mar 2001 01:35:50 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   10 Mar 2001 00:43:03 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   10 Mar 2001 10:50:27 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   10 Mar 2001 15:03:10 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   09 Mar 2001 01:43:52 
 Re: Microsoft предлагает запретить Linux!!!   yx   09 Mar 2001 04:00:56 
 Re: Microsoft предлагает запретить Linux!!!   yx   13 Mar 2001 03:23:08 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   13 Mar 2001 12:04:11 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   13 Mar 2001 12:39:00 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   13 Mar 2001 18:03:46 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   13 Mar 2001 18:40:18 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   13 Mar 2001 22:03:35 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   14 Mar 2001 02:12:58 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   14 Mar 2001 14:03:28 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   14 Mar 2001 18:03:40 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   15 Mar 2001 02:03:51 
 Re: Microsoft предлагает запретить Linux!!!   A.N.Kuznetsov   13 Mar 2001 22:34:03 
 Re: Microsoft предлагает запретить Linux!!!   yx   14 Mar 2001 04:34:18 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   14 Mar 2001 14:03:28 
 Re: Microsoft предлагает запретить Linux!!!   yx   14 Mar 2001 21:36:12 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   07 Mar 2001 13:16:48 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   08 Mar 2001 01:03:49 
 Re: Microsoft предлагает запретить Linux!!!   Vladimir Bormotov   08 Mar 2001 02:34:41 
 Re: Microsoft предлагает запретить Linux!!!   Eugene B. Berdnikov   08 Mar 2001 14:04:43 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   08 Mar 2001 02:36:41 
 Re: Microsoft предлагает запретить Linux!!!   Sergey Kubushin   08 Mar 2001 21:57:17 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   09 Mar 2001 01:33:48 
 Re: Microsoft предлагает запретить Linux!!!   Sergey Kubushin   09 Mar 2001 03:40:49 
 Re: Microsoft предлагает запретить Linux!!!   Valentin Nechayev   09 Mar 2001 10:16:43 
 Microsoft предлагает запретить Linux!!!   Dmitry Suhodoev   05 Mar 2001 22:10:59 
 Re: Microsoft предлагает запретить Linux!!!   Vitaly Lugovsky   11 Mar 2001 21:31:40 
 Re: Microsoft предлагает запретить Linux!!!   Alex Korchmar   12 Mar 2001 13:08:32 
 Microsoft предлагает запретить Linux!!!   Dmitry Ivanov   13 Mar 2001 00:39:26 
 Re: Microsoft предлагает запретить Linux!!!   Maxim Petrankov   12 Mar 2001 22:06:24 
 Microsoft предлагает запретить Linux!!!   Andrey Rudyavsky   14 Mar 2001 16:59:20 
 Microsoft предлагает запретить Linux!!!   Dmitrij Volkov   20 Feb 2001 13:15:08 
Архивное /ru.linux/913804298c8d.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional