Hi everyone, I am a bit unclear about how to specify memory limits for Go processes and what can be assumed about the Garbage collection behavior when approaching such a memory limit.
Specifically, I would want to be able to 'tell' a Go process to not use more than X GB of RAM and then expect that if ever the process panics/crashes due to lack of memory, then it can be assumed that there are enough live objects that account for entire of the 'permitted' X GB limit. I understand the OS constructs can be used to limit process memory but that will probably not be sufficient - as the process could have been killed by OS even though Go GC could have internally freed up memory and used that instead of asking OS for more. I understand that fiddling with GOGC will make the GC more aggressive but it doesn't feel right to make this too aggressive to enforce the above desired behavior. Keeping it at default will probably only guarantee me that half the heap contains live/useful objects at any give time. Please let me know if there is something I have missed to read regarding this or if there is already a way to achieve this? -- cheers, gaurav -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.