mirror of
https://github.com/postgres/postgres.git
synced 2025-11-19 13:42:17 +03:00
c.h #includes a number of core libc header files, such as <stdio.h>. There's no point in re-including these after having read postgres.h, postgres_fe.h, or c.h; so remove code that did so. While at it, also fix some places that were ignoring our standard pattern of "include postgres[_fe].h, then system header files, then other Postgres header files". While there's not any great magic in doing it that way rather than system headers last, it's silly to have just a few files deviating from the general pattern. (But I didn't attempt to enforce this globally, only in files I was touching anyway.) I'd be the first to say that this is mostly compulsive neatnik-ism, but over time it might save enough compile cycles to be useful.
61 lines
994 B
C
61 lines
994 B
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* pthread-win32.c
|
|
* partial pthread implementation for win32
|
|
*
|
|
* Copyright (c) 2004-2017, PostgreSQL Global Development Group
|
|
* IDENTIFICATION
|
|
* src/interfaces/libpq/pthread-win32.c
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
#include "postgres_fe.h"
|
|
|
|
#include "pthread-win32.h"
|
|
|
|
DWORD
|
|
pthread_self(void)
|
|
{
|
|
return GetCurrentThreadId();
|
|
}
|
|
|
|
void
|
|
pthread_setspecific(pthread_key_t key, void *val)
|
|
{
|
|
}
|
|
|
|
void *
|
|
pthread_getspecific(pthread_key_t key)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
int
|
|
pthread_mutex_init(pthread_mutex_t *mp, void *attr)
|
|
{
|
|
*mp = (CRITICAL_SECTION *) malloc(sizeof(CRITICAL_SECTION));
|
|
if (!*mp)
|
|
return 1;
|
|
InitializeCriticalSection(*mp);
|
|
return 0;
|
|
}
|
|
|
|
int
|
|
pthread_mutex_lock(pthread_mutex_t *mp)
|
|
{
|
|
if (!*mp)
|
|
return 1;
|
|
EnterCriticalSection(*mp);
|
|
return 0;
|
|
}
|
|
|
|
int
|
|
pthread_mutex_unlock(pthread_mutex_t *mp)
|
|
{
|
|
if (!*mp)
|
|
return 1;
|
|
LeaveCriticalSection(*mp);
|
|
return 0;
|
|
}
|