In my previous post, I explained how to use the C++11 feature extern template to reduce compilation times when the same template instantiation occurs in multiple source files.
I first wrote this post on Simplify C++!, Arne Mertz’s blog on clean and maintainable C++.
In the last few years, the compilation times of C++ projects increased dramatically, in spite of the availability of fast computers with multiple CPU/cores and more RAM.
This article was originally published in the December 2018 issue of ACCU Overload Journal.
In this article, I describe a design solution that I have adopted several times in the past while working on applications for the diagnosis of complex distributed systems. This solution worked well in several contexts, and it’s still proving robust in many running systems.
In my work, I often develop applications meant to run for a long period of time, without a classic interaction with the user (i.e., without a proper UI). Sometimes, they are applications running on a server, sometimes in a custom board, but they are almost never desktop applications. Their other characteristic is that they’re not CPU bound applications, i.e., they’re not the kind of number crunching applications that you start and then wait for an output.