summary refs log blame commit diff stats
path: root/src/common/thread.c
blob: ba808737cc830b3cff7079ffd9cc4bba06d7ed98 (plain) (tree)
generated by cgit-pink 1.4.1 (git 2.36.1) at 2025-03-23 11:47:06 +0000
fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
#if 0	/* native file dialogs */
#include <fcntl.h>
#include "thread.h"

thread *
thread_new (void)
{
	thread *th;

	th = calloc (1, sizeof (*th));
	if (!th)
	{
		return NULL;
	}

	if (_pipe (th->pipe_fd, 4096, _O_BINARY) == -1)
	{
		free (th);
		return NULL;
	}

	return th;
}

int
thread_start (thread *th, void *(*start_routine)(void *), void *arg)
{
	DWORD id;

	CloseHandle (CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE)start_routine, arg, 0, (DWORD *)&id));
	th->threadid = id;

	return 1;
}
#endif