gecko-dev/tools/jprof/jprofsig

63 lines
1.4 KiB
Bash
Executable File

#!/bin/sh
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is Mozilla Communicator.
#
# The Initial Developer of the Original Code is Chris McAfee.
# Portions created by Chris McAfee are
# Copyright (C) The Mozilla Organization.
# All Rights Reserved.
#
# Contributor(s): Chris McAfee <mcafee@netscape.com>
#
#
# Find Mozilla PID and send it a signal, to be used
# with the jprof tool.
#
jpsignal_usage() {
echo "Usage: jprofsig [start|stop]"
exit 1
}
if [ $# != 1 ]; then
echo "Wrong number of arguments."
jpsignal_usage
fi
jpsignal_arg="$1"
# Find & print mozilla PID
tmpmoz=`ps aux | grep mozilla-bin | head -1 | awk '{ print $2 }'`
echo "Mozilla PID = $tmpmoz"
# See how we were called.
case "$jpsignal_arg" in
start)
if [ "$JP_REALTIME" = 1 ]; then
kill -ALRM $tmpmoz
else
# Normal, non-realtime mode.
kill -PROF $tmpmoz
fi
;;
stop)
kill -USR1 $tmpmoz
;;
*)
jpsignal_usage
exit 1
esac
exit 0