
I have a program that dies, saying simply "Killed". How can I tell what that means? I presume the program is suffering a ThreadKilled exception, and I guess it may be due to stack or heap overflow. (The program is processing a 50MB file.) Profiling, even with -xc, yields no information. Dean

Dean Herington
I have a program that dies, saying simply "Killed". How can I tell what that means?
It means that the operating system (Linux probably?) has terminated your program. One thing to check is your ulimit settings, which can place a bound on the amount of resources (time, memory, etc) a process may use. e.g. $ ulimit -a core file size (blocks) 0 data seg size (kbytes) unlimited file size (blocks) unlimited max locked memory (kbytes) unlimited max memory size (kbytes) unlimited open files 1024 pipe size (512 bytes) 8 stack size (kbytes) 8192 cpu time (seconds) unlimited max user processes 2048 virtual memory (kbytes) unlimited Another possibility is that your program extends the heap until the entire virtual memory on your machine is exhausted, which also leads the OS to kill it. Check whether this is the case by monitoring memory usage using 'top' or 'gtop' or something. Regards, Malcolm
participants (2)
-
Dean Herington
-
Malcolm Wallace