SIGTSTP signals a terminal stop: the user on the process' controlling tty has typed the "stop" character (usually ^Z). If uncaught by the process, it will cause the process to stop, just like
SIGSTOP. Unlike that signal, however, it can be caught and handled.
Programs often need to perform some actions before stopping. For example,
less restores some tty settings before stopping (or you'd potentially be stuck in no-echo mode with the cursor somewhere in mid-screen whenever you typed ^Z at it). To see its use, run
less on some file and hit ^Z: the screen behaves normally. Now run
less again, and
kill -STOP it. Resume
less, and your terminal should be in a much worse state.