Pragmatically it doesn't feel like there's a lot of difference to humans, because even single-threaded concurrent code feels like it's parallel because computers are just so, so much faster than humans that switching rapidly feels parallel. And you often are well advised to treat it as parallel anyhow, at least to some extent, for safety's sake. That is, you may be able to get away with less "locking" in concurrent-but-not-parallel code, but you still can't write it exactly the same as conventionally single-threaded code or you will still get into a lot of trouble very quickly.
So pragmatically I don't find a lot of value in distinguishing between "concurrent" and "parallel". Some. But not a lot.
There is a difference for sure. It just isn't useful in proportion to the way people like to jump up and correct people about the differences.
So pragmatically I don't find a lot of value in distinguishing between "concurrent" and "parallel". Some. But not a lot.
There is a difference for sure. It just isn't useful in proportion to the way people like to jump up and correct people about the differences.