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

Вниз

Два потока и общая процедура   Найти похожие ветки 

 
начинающий2   (2011-01-18 08:33) [0]

Мне бы узнать как будут работать два потока  при вызове одной и той же процедуры. Будут созданы две копии процедуры для каждого потока или потоки будут работать с одной процедурой одновременно?


 
И. Павел ©   (2011-01-18 08:46) [1]

> Мне бы узнать как будут работать два потока  при вызове
> одной и той же процедуры. Будут созданы две копии процедуры
> для каждого потока или потоки будут работать с одной процедурой
> одновременно?

Ну локальные переменные будут разные (если вы это имеете ввиду) а глобальные - одни. Так что если процедура использует какие-то глобальные (разделяемые обоими потоками) объекты, нужно использовать синхронизацию, так чтобы два потока могли использовать процедуру только по очереди.


 
RWolf ©   (2011-01-18 09:47) [2]

На каждый поток выделяется некоторое количество страниц под стек, больше ничего. Код в памяти процесса не дублируется.


 
Ega23 ©   (2011-01-18 10:36) [3]


>  Так что если процедура использует какие-то глобальные

Скорее, не использует, а изменяет. На чтение - пофиг (если только оно извне кем-то не меняется)


 
han_malign   (2011-01-18 10:40) [4]

больше того, если процедура в DLL, то сегмент кода еще и несколькими процессами используется(но в разных сегментах данных, если сегмент данных не был помечен линковщиком как разделяемый(shared))...



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
15-1292840260
ocean
2010-12-20 13:17
2011.04.17
К вопросу о нобелевских премиях


2-1295328781
начинающий2
2011-01-18 08:33
2011.04.17
Два потока и общая процедура


15-1294090199
Юрий
2011-01-04 00:29
2011.04.17
С днем рождения ! 4 января 2011 вторник


3-1256535483
JohnLemon
2009-10-26 08:38
2011.04.17
Помогите с SQL запросом....


15-1293587663
TUser
2010-12-29 04:54
2011.04.17
Чтобы только мышкой тыкать