Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
 |  |  |  |
к слову... 29.04.02 20:43 Число просмотров: 993
Автор: beetle <beetle> Статус: Member Отредактировано 30.04.02 14:11 Количество правок: 1
|
> если я пишу на асме как отловить параметр который эта апи > вроде как передает нити (pop-ом?) В Win32-подсистеме потоки создаются с помощью функции CreateRemoteThread,которая кроме всего прочего инициализирует указатель команд(в структуре СONTEXT) адресом внутренней стартовой функции, из которой будет вызвана твоя стартовая функция потока - потому параметр ляжет на стек.Кстати стек потока-это всего-лишь область памяти процесса,которую зарезервировала и передала для потока CreateRemoteThread
|
|
<programming>
|
[Win32] CreateThread 26.04.02 02:41
Автор: vh <Дмитрий> Статус: Member
|
Объясните плиз, как действует сабж (в win98)
в частности как он создает стэк, и создает ли?
|
 |  |
no msdn 26.04.02 03:49
Автор: vh <Дмитрий> Статус: Member
|
cорри забыл написать что я его уже читал
документация по createthread
вроде все понятно, но дело в том что не написано где и как создается стек и вообще, она почему портит процессорный стек :(
|
 |  |  |
как это портит стэк? конкретизируй. 27.04.02 05:32
Автор: йцукенг <jcukeng> Статус: Member
|
> cорри забыл написать что я его уже читал невнимательно читал, почитай еще. там все подробно описано про стэк.
не в самом хелпе по CreateThread, а в доке, на которую есть ссылка с этого хэлпа.
> вроде все понятно, но дело в том что не написано где и как > создается стек и вообще, она почему портит процессорный > стек :( слушай, давай сюда пример, а то неясно, что, как и почему там портится.
и вообще - погоняй прогу под BoundsChecker'ом. есть маза, что не CreateThread виноват, а ты что-то намудрил:).
|
 |  |  |  |
как это портит стэк? конкретизируй. 30.04.02 18:29
Автор: vh <Дмитрий> Статус: Member
|
> слушай, давай сюда пример, а то неясно, что, как и почему > там портится. примера у меня ща нет (и не будет дней ее шесть,, т.к. я отдыхаю на праздниках :))
но суть в том что процесс загонят в свой стек какую то процедуру, и запусккает ее отдельной нитью, но после выполения нити опред. участок (не тот в котором лежит функция) стека процесса изменяется, в результате чего процесс не вполне корректно выгружается.
> и вообще - погоняй прогу под BoundsChecker'ом. есть маза, > что не CreateThread виноват, а ты что-то намудрил:). скорей всего так и есть. :)
а что это за БаундЧекер, что он делает?
кстати ты случайно не знаешь чем можно отлаживать нити кроме софтайса (например как это делать в WinDasm-e)
санкс
|
 |  |  |
к слову... 26.04.02 03:51
Автор: vh <Дмитрий> Статус: Member
|
|
если я пишу на асме как отловить параметр который эта апи вроде как передает нити (pop-ом?)
|
 |  |  |  |
к слову... 29.04.02 20:43
Автор: beetle <beetle> Статус: Member Отредактировано 30.04.02 14:11 Количество правок: 1
|
> если я пишу на асме как отловить параметр который эта апи > вроде как передает нити (pop-ом?) В Win32-подсистеме потоки создаются с помощью функции CreateRemoteThread,которая кроме всего прочего инициализирует указатель команд(в структуре СONTEXT) адресом внутренней стартовой функции, из которой будет вызвана твоя стартовая функция потока - потому параметр ляжет на стек.Кстати стек потока-это всего-лишь область памяти процесса,которую зарезервировала и передала для потока CreateRemoteThread
|
|
|