Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Claudio Neto

[Resolvido] Erro usando multi tarefas.

Recommended Posts

Estou tentando desenvolver algumas aplicações usando multitarefas para aprender.

 

Achei muuuita coisa na net que não dá certo de jeito nenhum, até encontrar a forma abaixo:

 

#include <windows.h>
#include <iostream>

DWORD WINAPI ThreadFn(LPVOID vpParam);

int main(){
	using namespace std;
	//Create the thread and pass in ther function pointer 
	unsigned int uiCounter = 0;
	DWORD qThreadID;
	HANDLE hThread = CreateThread(0,0,ThreadFn,&uiCounter,0,&qThreadID);
	
	//Loop until the user enters 'q'
	char cChar = ' ';
	while (cChar != 'q'){
		printf("isso = %d",uiCounter);
		cChar = (char)getchar();
	}
	
	//Close the HANDLE to the thread
	CloseHandle(hThread);
	return 0;
}

DWORD WINAPI ThreadFn(LPVOID vpParam){
	unsigned int& uirCounter = *((unsigned int*)vpParam);
	//Increment up to the maximum value
	while (uirCounter < 0xFFFFFFFF){
		++uirCounter;
	}
	return 0;
}

Porém está dando um erro que não consegui identificar o motivo. Alguém pode me ajudar?

 

Erro:

C:\DOCUME~1\neto\CONFIG~1\Temp/ccszaaaa.o:teste_thread.cpp:(.text+0xd): undefine

d reference to `std::string::size() const'

C:\DOCUME~1\neto\CONFIG~1\Temp/ccszaaaa.o:teste_thread.cpp:(.text+0x60): undefin

ed reference to `std::string::operator[](unsigned int) const'

C:\DOCUME~1\neto\CONFIG~1\Temp/ccszaaaa.o:teste_thread.cpp:(.text+0x9e): undefin

ed reference to `std::string::operator[](unsigned int) const'

C:\DOCUME~1\neto\CONFIG~1\Temp/ccszaaaa.o:teste_thread.cpp:(.text+0xcc): undefin

ed reference to `std::string::operator[](unsigned int) const'

C:\DOCUME~1\neto\CONFIG~1\Temp/ccszaaaa.o:teste_thread.cpp:(.text+0x1e5): undefi

ned reference to `std::ios_base::Init::Init()'

C:\DOCUME~1\neto\CONFIG~1\Temp/ccszaaaa.o:teste_thread.cpp:(.text+0x200): undefi

ned reference to `std::ios_base::Init::~Init()'

collect2: ld returned 1 exit status

 

 

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beleza Isis, funcionou.

 

Um beijão pra você!!! Obrigado.

 

Ah, eu havia dito que as outras formas que eu tinha achado deram errado, vou tentar usando g++ também para ver se não era esse o motivo do erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Arrisco dizer que se apagar a linha ' #include <iostream> ' e compilar com o gcc também funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.