Specifically regarding MySQL, what is the difference between a thread and a process? The documentation seems to refer to them interchangeably at times, and it even throws in the term "session" too.
At the most basic level, the command to show threads includes the term PROCESSLIST
, as if a list of processes is a list of threads. (https://dev.mysql.com/doc/refman/5.6/en/show-processlist.html -- The first sentence says this list "shows which threads are running.") But then, in the performance_schema.threads
table, each thread there has its own unique thread_id
that is not the ID
returned from SHOW [FULL] PROCESSLIST
. Instead, PROCESSLIST_ID
is a foreign key to the PROCESSLIST (https://dev.mysql.com/doc/refman/5.6/en/threads-table.html). This leads me to believe that threads and processes are not the same thing.