Index: base/process/process_metrics_ios.cc |
diff --git a/base/process/process_metrics_ios.cc b/base/process/process_metrics_ios.cc |
index 9f0e8c6ba98603db8a4da4dda3d6ea9c2af59bbd..94c671901b6ee97affcca3c21695abff4d935e2a 100644 |
--- a/base/process/process_metrics_ios.cc |
+++ b/base/process/process_metrics_ios.cc |
@@ -44,4 +44,21 @@ size_t ProcessMetrics::GetWorkingSetSize() const { |
return task_info_data.resident_size; |
} |
+size_t GetMaxFds() { |
+ static const rlim_t kSystemDefaultMaxFds = 256; |
+ rlim_t max_fds; |
+ struct rlimit nofile; |
+ if (getrlimit(RLIMIT_NOFILE, &nofile)) { |
+ // Error case: Take a best guess. |
+ max_fds = kSystemDefaultMaxFds; |
+ } else { |
+ max_fds = nofile.rlim_cur; |
+ } |
+ |
+ if (max_fds > INT_MAX) |
+ max_fds = INT_MAX; |
+ |
+ return static_cast<size_t>(max_fds); |
+} |
+ |
} // namespace base |