From af52eda0eb224ce3081d1a8c8c95d6c97dccd2e7 Mon Sep 17 00:00:00 2001 From: Robo Date: Sat, 29 Aug 2015 20:44:52 +0530 Subject: [PATCH] process: api to set file descriptor soft limit --- atom/common/api/atom_bindings.cc | 4 ++++ docs/api/app.md | 1 - docs/api/process.md | 7 +++++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/atom/common/api/atom_bindings.cc b/atom/common/api/atom_bindings.cc index c748647f48d0..d6fb355e09d8 100644 --- a/atom/common/api/atom_bindings.cc +++ b/atom/common/api/atom_bindings.cc @@ -11,6 +11,7 @@ #include "atom/common/chrome_version.h" #include "atom/common/native_mate_converters/string16_converter.h" #include "base/logging.h" +#include "base/process/process_metrics.h" #include "native_mate/dictionary.h" #include "atom/common/node_includes.h" @@ -61,6 +62,9 @@ void AtomBindings::BindTo(v8::Isolate* isolate, dict.SetMethod("crash", &Crash); dict.SetMethod("hang", &Hang); dict.SetMethod("log", &Log); +#if defined(OS_POSIX) + dict.SetMethod("setFdLimit", &base::SetFdLimit); +#endif dict.SetMethod("activateUvLoop", base::Bind(&AtomBindings::ActivateUVLoop, base::Unretained(this))); diff --git a/docs/api/app.md b/docs/api/app.md index db34d37ec59e..07b26f2c5663 100644 --- a/docs/api/app.md +++ b/docs/api/app.md @@ -269,7 +269,6 @@ Adds `tasks` to the [Tasks][tasks] category of the JumpList on Windows. consists of two or more icons, set this value to identify the icon. If an icon file consists of one icon, this value is 0. - ### `app.commandLine.appendSwitch(switch[, value])` Append a switch (with optional `value`) to Chromium's command line. diff --git a/docs/api/process.md b/docs/api/process.md index c9efa22fe0f9..930a5860fc44 100644 --- a/docs/api/process.md +++ b/docs/api/process.md @@ -11,3 +11,10 @@ upstream node: ## process.hang Causes the main thread of the current process hang. + +## process.setFdLimit(maxDescriptors) _OS X_ _Linux_ + +* `maxDescriptors` Integer + +Sets the file descriptor soft limit to `maxDescriptors` or the OS hard +limit, whichever is lower for the current process.