Commit d0f9823b8b10e56fe92b9fc2400ca3e41b811b77
1 parent
da79524c
Make get_current_rss() compile on Mac OS X.
Showing
1 changed file
with
9 additions
and
0 deletions
src/support/ctool.cpp
| ... | ... | @@ -421,12 +421,21 @@ size_t ctool::get_current_rss(void) |
| 421 | 421 | // Determine resident set size (architecture dependent) |
| 422 | 422 | // OSX |
| 423 | 423 | #if defined(__APPLE__) && defined(__MACH__) |
| 424 | + #ifdef MACH_TASK_BASIC_INFO | |
| 424 | 425 | struct mach_task_basic_info info; |
| 425 | 426 | mach_msg_type_number_t infoCount = MACH_TASK_BASIC_INFO_COUNT; |
| 426 | 427 | if (task_info(mach_task_self( ), MACH_TASK_BASIC_INFO, |
| 427 | 428 | (task_info_t)&info, &infoCount) == KERN_SUCCESS) { |
| 428 | 429 | rss = (size_t)info.resident_size; |
| 429 | 430 | } |
| 431 | + #else | |
| 432 | + struct task_basic_info info; | |
| 433 | + mach_msg_type_number_t info_count = TASK_BASIC_INFO_COUNT; | |
| 434 | + if (task_info(mach_task_self(), TASK_BASIC_INFO, | |
| 435 | + (task_info_t)&info, &info_count) == KERN_SUCCESS) { | |
| 436 | + rss = (size_t)info.resident_size; | |
| 437 | + } | |
| 438 | + #endif | |
| 430 | 439 | // Linux |
| 431 | 440 | #elif defined(__linux__) || defined(__linux) || defined(linux) || defined(__gnu_linux__) |
| 432 | 441 | FILE* fp = NULL; | ... | ... |