summaryrefslogtreecommitdiff
path: root/libavutil
diff options
context:
space:
mode:
authorwang-bin <wbsecg1@gmail.com>2015-09-29 18:11:03 +0800
committerMatt Oliver <protogonoi@gmail.com>2015-10-16 00:54:57 +1100
commit0861862b897ade9e62064f532f3b0a957ee7a0d8 (patch)
tree31a4529e5bc9ecfa7e668a0cb05249c04a72dd32 /libavutil
parent909907948846dedf57a730a4d115d04d1117f9e5 (diff)
winrt: multithreading support
_beginthreadex is for desktop only. CreateThread is available for windows store apps on windows (and phone) 8.1 and later. http://msdn.microsoft.com/en-us/library/ms682453%28VS.85%29.aspx Signed-off-by: Matt Oliver <protogonoi@gmail.com>
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/cpu.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/libavutil/cpu.c b/libavutil/cpu.c
index 780368d69e..c64baf9324 100644
--- a/libavutil/cpu.c
+++ b/libavutil/cpu.c
@@ -30,7 +30,7 @@
#endif
#include <sched.h>
#endif
-#if HAVE_GETPROCESSAFFINITYMASK
+#if HAVE_GETPROCESSAFFINITYMASK || HAVE_WINRT
#include <windows.h>
#endif
#if HAVE_SYSCTL
@@ -253,6 +253,9 @@ int av_cpu_count(void)
static volatile int printed;
int nb_cpus = 1;
+#if HAVE_WINRT
+ SYSTEM_INFO sysinfo;
+#endif
#if HAVE_SCHED_GETAFFINITY && defined(CPU_COUNT)
cpu_set_t cpuset;
@@ -274,6 +277,9 @@ int av_cpu_count(void)
nb_cpus = sysconf(_SC_NPROC_ONLN);
#elif HAVE_SYSCONF && defined(_SC_NPROCESSORS_ONLN)
nb_cpus = sysconf(_SC_NPROCESSORS_ONLN);
+#elif HAVE_WINRT
+ GetNativeSystemInfo(&sysinfo);
+ nb_cpus = sysinfo.dwNumberOfProcessors;
#endif
if (!printed) {