如何限制 Mac OS 应用程序可以使用的 RAM 量?

8 memory mac dropbox

我安装了 dropbox,它的内存管理很糟糕。它通常使用我 4GB 内存中的 3GB。

有没有办法限制应用程序内存使用?

我希望永远不会允许超过 250 MB 的 RAM。

Ada*_*eld 1

您可以尝试使用ulimit内置的 shell 来限制资源,但随后您必须从运行的 shell 启动 Dropbox ulimit,而不是从 Finder 或其他东西启动。

$ help ulimit
ulimit: ulimit [-SHacdefilmnpqrstuvx] [limit]
    Modify shell resource limits.

    Provides control over the resources available to the shell and processes
    it creates, on systems that allow such control.

    Options:
      -S        use the `soft' resource limit
      -H        use the `hard' resource limit
      -a        all current limits are reported
      -b        the socket buffer size
      -c        the maximum size of core files created
      -d        the maximum size of a process's data segment
      -e        the maximum scheduling priority (`nice')
      -f        the maximum size of files written by the shell and its children
      -i        the maximum number of pending signals
      -l        the maximum size a process may lock into memory
      -m        the maximum resident set size
      -n        the maximum number of open file descriptors
      -p        the pipe buffer size
      -q        the maximum number of bytes in POSIX message queues
      -r        the maximum real-time scheduling priority
      -s        the maximum stack size
      -t        the maximum amount of cpu time in seconds
      -u        the maximum number of user processes
      -v        the size of virtual memory
      -x        the maximum number of file locks

    If LIMIT is given, it is the new value of the specified resource; the
    special LIMIT values `soft', `hard', and `unlimited' stand for the
    current soft limit, the current hard limit, and no limit, respectively.
    Otherwise, the current value of the specified resource is printed.  If
    no option is given, then -f is assumed.

    Values are in 1024-byte increments, except for -t, which is in seconds,
    -p, which is in increments of 512 bytes, and -u, which is an unscaled
    number of processes.

    Exit Status:
    Returns success unless an invalid option is supplied or an error occurs.
Run Code Online (Sandbox Code Playgroud)

您可能想要ulimit -mulimit -v

  • 这是行不通的。我执行了“ulimit -m 200000”和“ulimit -v 200000”,然后通过“/Applications/ABC.app/Contents/MacOS/ABC”运行应用程序。然后,在我终止该进程之前,我看到内存远远超过 500 MB。 (3认同)