Сделал тестовый проектик и хочу посмотреть как оно себя ведёт. В текущем виде поток неторопливо отщёлкивает цыфири, а вывод летит что за ним не успеваешь.
Если разремить
//Sleep(1);
перед
printf("%d ", a);
то чёрное окошко и ничё не пишется. Как затормозить работу? программы?
#include <process.h>
#include <stdio.h>
#include <Windows.h>
int a;
class cLs
{
public:
cLs(){};
void ru(int * la)
{
int i, num = 0;
while ( 1 )
{
Sleep(10);
*(la ) = num;
num++;
}};
};
void Thread( void* pParams ) {
cLs per;
per.ru(&a);
}
int main( void )
{
int i;
_beginthread( Thread, 0, NULL );
while( 1 )
//Sleep(1);
printf("%d ", a);
return 0;
}
Ps: пробовал цикл до тыщщи и повесил комп
Здравствуйте, DmitryK1,
DK>DK>void Thread( void* pParams ) {
DK> cLs per;
DK> per.ru(&a);
DK>}
DK>int main( void )
DK>{
DK>int i;
DK> _beginthread( Thread, 0, NULL );
DK> while( 1 ) {
DK> //Sleep(1);
DK> printf("%d ", a); }
DK> return 0;
DK>}
DK>
--
Добавь скобки { после while и } после printf.
C уважением,
Геннадий Майко.