On Sat, 2017-09-09 at 14:16 +0200, Wolfgang Pfeiffer wrote: > > If this were actually true, I would not be > > able to build and link with the new C++ library, and its changed ABI, and I > > would get immediate runtime segfaults after linking with the new library, > > but still loading the old version at runtime because the existing daemon > > still has the old shared library loaded. That would be a rather rude, and > > impolite thing to do. > > Are you saying that we can have two different versions of a daemon on the > system, and each one with its own specific and different versions, old and new, > of libraries attached to it? Short answer, yes, but the same applies to any program, not just daemons, and in fact to any file, not just executables and libraries. As Sam said, if you replace a file while it is still running, the old version will continue to be used by any process which had already opened it. However once you execute the program again (or link to the new library, or re-open the file), you'll get the new version. Both can be in use at the same time and this normally doesn't matter. NB: "replace" means "unlink the old one and create the new one with the same name", e.g. using "mv". Overwriting the old file with new data is different and in the case of executables or libraries will almost certainly cause problems. poc _______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx