Jens Alfke wrote: > With clock speed having stalled, the only way to take advantage of > modern CPUs (and GPUs!) is to go parallel.
But "go parallel" does not necessarily imply threads. There are many ways to allow code running on different CPUs(/cores) to communicate with each other (e.g., files, sockets, message queues, pipes, shared memory, etc.), and almost all of them are safer than threading because they do not require that _all_ of the address space and the process context are shared. When using threads, all memory accesses are unsafe by default, and it is then the job of the programmer to manually add some form of locking to make it safe again. Threading is the most extreme method of achieving parallelism, and therefore should be used only as the last resort. (I'd compare it to assembly code in this regard.) Regards, Clemens _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users