It is recommended here to put a service that runs continuously in background. Be noted that IntentService stops itself when it runs out of work.
Also, according to this thread:
If a user force-stops your app from Settings, your code will never ever run again, until something manually runs one of your components, typically the user manually launching an activity (as of Android 3.1). Hence, if the user force-stops your app from Settings, you will not receive GCM messages on newer devices/emulators.
And as @Bmbariah stated, an Android application on an Android device doesn't need to be running to receive messages. The system will wake up the Android application via Intent broadcast when the message arrives, as long as the application is set up with the proper broadcast receiver and permissions. You may check this WakefulBroadcastReceiver service that lets you manage the life cycle of a background task.
The docs only say "Wake up" which to me implies an app is "sleeping" or in the background. But when you force close an app it has no running process to "wake up", it needs to be started.
Hope this helps!