How to read error codes which appear in the console?
<Warning>: ....... -exited abnormally with signal 9: Killed: 9
<Warning>: ....... -1 err = Bad file descriptor (0x00000009)
Here what does signal 9 mean, are there any more signals apart from it. Any documentation available for it.
I get this kind of error, when a App. launched from Xcode is terminated by "Stop" button in Xcode toolbar.
(Another way to get this error is , to press home button, then double tap home button and close the app.)
Things even get worse when I launch the App. again, by tapping on App. icon on iPad Screen, App crashes and throws "libMobileGestalt copySystemVersionDictionaryValue: Could not lookup ReleaseType from system version dictionary"
From finding on stack overflow , I see that this error is found in iOS 6 devices.
This url states that it's a SIGKILL error and it happens when "application is being terminated immediately, without any chance to clean up or catch and handle the signal"
So, I think releasing objets in -(void) didReceiveMemoryWarning
would not help to solve it, then what could be a definite solution?
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Release objects.
obj1 = nil;
[view1 removeFromSuperView];
view1 = nil;
...
}
What is SIGKILL (signal 9) SIGKILL is a type of communication, known as a signal, used in Unix or Unix-like operating systems like Linux to immediately terminate a process.
A “Signal 9,” which a dispatcher might announce during a fire run, means “disregard.” The shorthand language has been in use for generations and was even appropriated by trucker drivers and popularized during the citizens band radio craze of the late 1970s and early '80s.
In such a case, the process can be killed by using SIGKILL signal (9). This signal can't be generated at the press of a key, so we have to use KILL with the signal name preceded with -s option.
Symptoms. signal 9 is KILL. This all means that some external process killed the TimesTen subdaemon process, 16664.
It means that the application received a signal. Some signal could be handled by the applications, others, not. Signal 9 means that the application needs to be killed, it is not handled by the process, but by the Linux scheduler. The signal to terminate the process that is handled by the process is SIGTERM(15), but, if the process doesn't handle it property, then the process continues to live.
here are the major signals:
Signal Value Action Comment
──────────────────────────────────────────────────────────────────────
SIGHUP 1 Term Hangup detected on controlling terminal
or death of controlling process
SIGINT 2 Term Interrupt from keyboard
SIGQUIT 3 Core Quit from keyboard
SIGILL 4 Core Illegal Instruction
SIGABRT 6 Core Abort signal from abort(3)
SIGFPE 8 Core Floating point exception
SIGKILL 9 Term Kill signal
SIGSEGV 11 Core Invalid memory reference
SIGPIPE 13 Term Broken pipe: write to pipe with no
readers
SIGALRM 14 Term Timer signal from alarm(2)
SIGTERM 15 Term Termination signal
SIGUSR1 30,10,16 Term User-defined signal 1
SIGUSR2 31,12,17 Term User-defined signal 2
SIGCHLD 20,17,18 Ign Child stopped or terminated
SIGCONT 19,18,25 Cont Continue if stopped
SIGSTOP 17,19,23 Stop Stop process
SIGTSTP 18,20,24 Stop Stop typed at terminal
SIGTTIN 21,21,26 Stop Terminal input for background process
SIGTTOU 22,22,27 Stop Terminal output for background process
On UNIX systems the normal way to force terminate an app process is with
kill -9 PROCESS_ID
This sends the app the signal number nine which means: "you quit, NOW"
Generally unhandled exceptions will also cause the OS to terminate apps with this signal. Also killing an app via the "task switcher" does the same thing.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With