diff options
author | Billy Donahue <BillyDonahue@users.noreply.github.com> | 2015-12-10 17:29:15 -0500 |
---|---|---|
committer | Billy Donahue <BillyDonahue@users.noreply.github.com> | 2015-12-10 17:29:15 -0500 |
commit | ddb8012eb48bc203aa93dcc2b22c1db516302b29 (patch) | |
tree | 3544c51f070a73b702663fb89e4a2c5a31febc68 | |
parent | 0162ff72e80e50e06264081d6e278a5af5d5228a (diff) | |
parent | bf7e9e8c2bb3892d9b4dedda81c988aad6fea5c7 (diff) | |
download | googletest-ddb8012eb48bc203aa93dcc2b22c1db516302b29.tar.gz googletest-ddb8012eb48bc203aa93dcc2b22c1db516302b29.tar.bz2 googletest-ddb8012eb48bc203aa93dcc2b22c1db516302b29.zip |
Merge pull request #602 from mtbrandy/threadcount_aix
Implement GetThreadCount for AIX.
-rw-r--r-- | googletest/src/gtest-port.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/googletest/src/gtest-port.cc b/googletest/src/gtest-port.cc index 3842c415..0162fac4 100644 --- a/googletest/src/gtest-port.cc +++ b/googletest/src/gtest-port.cc @@ -58,6 +58,11 @@ # include <sys/procfs.h> #endif // GTEST_OS_QNX +#if GTEST_OS_AIX +# include <procinfo.h> +# include <sys/types.h> +#endif // GTEST_OS_AIX + #include "gtest/gtest-spi.h" #include "gtest/gtest-message.h" #include "gtest/internal/gtest-internal.h" @@ -146,6 +151,19 @@ size_t GetThreadCount() { } } +#elif GTEST_OS_AIX + +size_t GetThreadCount() { + struct procentry64 entry; + pid_t pid = getpid(); + int status = getprocs64(&entry, sizeof(entry), NULL, 0, &pid, 1); + if (status == 1) { + return entry.pi_thcount; + } else { + return 0; + } +} + #else size_t GetThreadCount() { |