Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.12;
Скачать: CL | DM;

Вниз

Мысль о процессах   Найти похожие ветки 

 
Shastox ©   (2006-02-17 21:55) [0]

Как пишет Дж. Рихтер, процессам присуще свойство "инертности", это я понимаю так: создаем простую программу, например по сканированию дирректорий на наличие файлов, и делаем кнопку стоп. Если нажать кнопку "Стоп", то процесс остановится не сразу, а через некоторое время, так как поток один.
 На однопроцессорной машине Windows, как известно, "псевдомногозадачна", т.е. процессорное время распределяется на все процессы, с учетом их приоритета, что происходит очень быстро и мы этого не знамечаем (например можно слушать музыку и одновременно играть в 3D игру, тормозов в музыке не заметим), если время распределяется с такой большой скоростью, откуда же возникает эта инертность?


 
kaZaNoVa ©   (2006-02-17 22:02) [1]

есть пример кода?


 
Игорь Шевченко ©   (2006-02-17 22:14) [2]


> Как пишет Дж. Рихтер, процессам присуще свойство "инертности"


Желательно цитату из первоисточника :)


> простую программу, например по сканированию дирректорий
> на наличие файлов, и делаем кнопку стоп. Если нажать кнопку
> "Стоп", то процесс остановится не сразу, а через некоторое
> время, так как поток один.


Разумно, ему же подумать надо :)


 
Shastox ©   (2006-02-17 22:20) [3]


> есть пример кода?

Не совсем понял, этого:
 
 > например по сканированию дирректорий на наличие файлов,
 

...нету, но тут вроде все понятно: делаем цикл и выход из него, if stopped=true, а по нажатию кнопки стоп делаем stopped:=true;


> Желательно цитату из первоисточника :)

Издание четвретое (русское), страница 48: "Процессы инертны".

> Разумно, ему же подумать надо :)

О чем ?:)


 
Игорь Шевченко ©   (2006-02-17 22:32) [4]

Shastox ©   (17.02.06 22:20) [3]


>  страница 48: "Процессы инертны".


Боюсь, что раньше вечера понедельника у меня не получится прочитать, поэтому желательно привести. Хотя бы тезисно.


> О чем ?:)


Останавливаться или нет :)


 
kaZaNoVa ©   (2006-02-17 22:33) [5]

Shastox ©   (17.02.06 22:20) [3]
...нету, но тут вроде все понятно: делаем цикл и выход из него, if stopped=true, а по нажатию кнопки стоп делаем stopped:=true;


если поток один - и не processmessages  - то и не остановится ..

а если сканирование в другом потоке и обращение к переменной сделано через критическую секцию, то имхо сразу 100% остановится


 
Игорь Шевченко ©   (2006-02-17 22:38) [6]

kaZaNoVa ©   (17.02.06 22:33) [5]

Ты бы Рихтера почитал, что ли...И тебе полезнее и обществу.


 
kaZaNoVa ©   (2006-02-17 22:41) [7]

практика критерий истины:)


 
Shastox ©   (2006-02-17 22:49) [8]


> Боюсь, что раньше вечера понедельника у меня не получится
> прочитать, поэтому желательно привести. Хотя бы тезисно.
>

Там кроме этих слов ничего больше не сказано про инертность. Вот ссылка на эту и другую страницу в формате jpg (сканера не было под рукой)
http://www.xsh.by.ru/book.zip ~170 килобайт


> а если сканирование в другом потоке и обращение к переменной
> сделано через критическую секцию, то имхо сразу 100% остановится

Этому прямое подтверждение - WinRar при распакове или упаковке.
Но если поток один, то..., чувствую этого мне не понять...


 
Игорь Шевченко ©   (2006-02-17 22:57) [9]

Shastox ©   (17.02.06 22:49) [8]

Рихтер имел в виду, что процессы сами по себе ничего не делают, а делают потоки. Процессы служат только контейнерами для адресного пространства, описателей объектов и т.д.

Дословно: "Процессы инертны. Чтобы процесс что-то выполнил, в нем нужно создать поток".

С наилучшими,


 
Shastox ©   (2006-02-17 23:05) [10]


> "Процессы инертны. Чтобы процесс что-то выполнил, в нем
> нужно создать поток".

А что означают жирные слова?


 
Eraser ©   (2006-02-17 23:07) [11]


> Shastox ©   (17.02.06 23:05) [10]

в учебнике по физике или химии должны быть описаны эти термины :)


 
Shastox ©   (2006-02-17 23:11) [12]


> в учебнике
> по физике

или химии должны быть описаны эти термины
> :)

Ага, еще на первом семестре проходили...


 
Игорь Шевченко ©   (2006-02-17 23:14) [13]


> А что означают жирные слова?


Что процесс сам по себе ничего не делает.

<Offtopic>
Неужели сфотографировать страницу, отметить на ней место, выложить ее в сеть, занимает меньше времени и сил, чем аккуратное цитирование абзаца ?
</Offtopic>


 
Eraser ©   (2006-02-17 23:18) [14]


> Shastox ©   (17.02.06 23:11) [12]

ну вот! тут то же самое только в кибернетике )


 
Shastox ©   (2006-02-17 23:36) [15]

Еще один offtopic:
{{{

> Неужели сфотографировать страницу, отметить на ней место,
>  выложить ее в сеть, занимает меньше времени и сил, чем
> аккуратное цитирование абзаца ?

Достать фотоаппарат - 10 секунд.
Сфоткать-15 секунд.
Немного изменить фото - 25 секунд
Выложить на сайт - 5 секунд.
______________
                  55 секунд

Перепечатать + исправить ошибки ~  3-6 минуты.
}}}

> Что процесс сам по себе ничего не делает.

А не проще было так и написать?


 
Ученик чародея ©   (2006-02-17 23:36) [16]

>>Игорь Шевченко ©   (17.02.06 22:38) [6]

Рекомендую почитать архитектуру 386... полезнее.


 
Игорь Шевченко ©   (2006-02-18 00:12) [17]

Ученик чародея ©   (17.02.06 23:36) [16]

С какой целью, если не секрет ?

Shastox ©   (17.02.06 23:36) [15]


> Перепечатать + исправить ошибки ~  3-6 минуты


Сочувствую. У меня выделенное место напечатать получилось гораздо быстрее.


> А не проще было так и написать?


Об этом Рихтер написал, достаточно прочитать. Язык вроде русский.



Страницы: 1 вся ветка

Текущий архив: 2006.03.12;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.029 c
3-1137996955
W
2006-01-23 09:15
2006.03.12
Кодировка таблиц *.dbf


1-1139500353
Piter
2006-02-09 18:52
2006.03.12
Указание кодировки текста в буфере обмена


2-1140728066
lex85
2006-02-23 23:54
2006.03.12
кнопка button1


1-1139296063
Duncan
2006-02-07 10:07
2006.03.12
Шифрование - дешифрование MD5


8-1128425545
Eugene_T
2005-10-04 15:32
2006.03.12
Конвертирование mp3 -> wav