Hilos en Aplicacion de Consola

09/04/2004 - 17:17 por Jaime | Informe spam
Hola a todos:

O no se buscar o no esta, pero me he recorrido todo el Google en busca de
alguna manera de crear hilos/threads, y seguro que la hay...

Quiero crear una aplicacion MultiThread (sin utilizar MFC).

En Linux son 4 o 5 funciones, y "aqui" en Windows no hay manera...

Si alguien conoce alguna pagina (cualquier idioma) o conoce las funciones
necesarias, le agradeceria que me las digera...

GRACIAS.

Preguntas similare

Leer las respuestas

#1 Cholo Lennon
09/04/2004 - 18:17 | Informe spam
Puedes utilizr la API de windows directamente:
(Cabecera: winbase.h, Biblioteca: kernel32.lib )

CreateRemoteThread
CreateThread
ExitThread
GetCurrentThread
GetCurrentThreadId
GetExitCodeThread
ResumeThread
SetThreadAffinityMask
SetThreadIdealProcessor
SetThreadPriority
SetThreadPriorityBoost
SuspendThread
TerminateThread
TlsAlloc
TlsFree
TlsGetValue
TlsSetValue

O la biblioteca de C (aunque son funciones no estándar):
(Cabecera: process.h, Biblioteca: libcmt.lib o msvcrt.lib)

_beginthread
_beginthreadex
_endthread
_endthreadex


Saludos
Cholo Lennon
Salta, ARG
Respuesta Responder a este mensaje
#2 Eduardo Sobrino
10/04/2004 - 14:31 | Informe spam
2004-04-10



¿Quieres crear una aplicación utilizando "Fibers" en Windows?



"Fibers" fueron provistas por Microsoft para permitir el portar aplicaciones
existentes en UNIX a Windows. Esto es debido a que según se define en
Windows las aplicaciones "servidores" de UNIX son de un "thread" aunque
sirven a más de un cliente. Para obtener mas información detallada sobre
"Fibers" le recomiendo el libro de "Jeffrey Richter" titulado "Programming
Applications for Microsoft Windows" que va por su cuarta edición.



Por otro lado si va a comenzar a crear una aplicación en Windows le
recomiendo que utilicé las facilidades de "Threading" en "Win32". Obtendrá
un mejor rendimiento ("performance") en adición a que es un API más
abarcador y completo.



Si persiste en utilizar "Fibers" algunas de las funciones a su alcance son:



PVOID CreateFiber(DWORD dwStackSize,PFIBER_START_ROUTINE pfnStartAddress,
PVOID pvParam);

VOID WINAPI FiberFunc(PVOID pvParam); // tu funcion para "pfnStartAddress"

VOID SwitchToFiber(PVOID pvFiberExecutionContext);

VOID DeleteFiber(PVOID pvFiberExecutionContext);

PVOID GetCurrentFiber();

PVOID GetFiberData();



Para utilizar "fibers" ss requerido convertir el "thread" existente en un
"fiber" utilizando:



PVOID ConvertThreadToFiber(PVOID pvParam);



Puedes ver en detalle sobre cada función buscando en el "MSDN"
(http://msdn.microsoft.com) as una busqueda en "fiber" y encontraras varias
referencias que te van ayudar a comenzar tu desarrollo.



Por otro lado recuerda que es mejor que empieces desarrollos nuevos
utilizando "threads" puros bajo "WIN32".



Eduardo Sobrino, MS MVP









"Jaime" wrote in message
news:
Hola a todos:

O no se buscar o no esta, pero me he recorrido todo el Google en busca de
alguna manera de crear hilos/threads, y seguro que la hay...

Quiero crear una aplicacion MultiThread (sin utilizar MFC).

En Linux son 4 o 5 funciones, y "aqui" en Windows no hay manera...

Si alguien conoce alguna pagina (cualquier idioma) o conoce las funciones
necesarias, le agradeceria que me las digera...

GRACIAS.



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida