Print spooling is configured by users with administrative privileges by using the printers Advanced tab. Jobs can be sent to the spooler, or sent directly to the printer. If jobs are sent to the spooler, they can be configured to start printing as soon as possible or after the final page in a job has been sent to the spooler.
When you send a print job directly to the printer, your computer renders the entire job and then transfers it directly to the printer. When you send a print job to a spooler, your computer creates the job, including meta-information about how the job must be processed, and then sends the job to the spooler. The spooler then renders the job and sends it to the printer.
Sending a job directly to the printer is good because you remove a potential point of failure in printing documents, and all print job rendering is done on your computer, affording you more control, and you dont have to wait for other jobs to complete, as you might if you were printing to a queue on a print server that was being used by many users. Conversely, rendering a print job on your computer consumes computing resources, so you might experience reduced performance or have to wait until the print job has completed before doing anything.
Sending a print job to a spooler is good because your computer does not have to render the print job, meaning your computers resource are more completely and immediately available. Conversely, sending a print job to a spooler fails if the print server with the spooler is unavailable, and you might have to wait for other jobs to finish spooling before your job is processed.
Spoolers can be configured to send print jobs as each page is rendered and ready for printing or to wait to begin printing until the entire job has been rendered. If the spooler is configured to print each page as soon as it is rendered, there might be a long wait between each printed page, resulting in slow print production, as the printer waits for each successive page to be rendered. Printers configured to print completely spooled jobs typically print faster after the job is started, but there can be a long wait while the job is spooled. If each spooler has many users, waiting until the entire job is spooled is typically best. If each spooler has few users, printing each page as it spools might be best.