ROS nodes, generated from Simulink or not, generally run as their own separate process. Certain operations will initiate an additional thread running for various purposes. When the node "spins", it should create a separate thread for monitoring the network, especially for subscribers.
If you are interested in having multiple ROS nodes in one process (for more efficient sharing of data through shared memory), you can look into ROS nodelets. Unfortunately, there is currently no way to generate nodelets from Simulink. Each model generates a single node, by design.