It's a matter of geometry: how the specified thread width fits into the wall dimensions.
For a straight wall, the only possible wall widths without infill are integer multiples of the thread width. For a 0.4 mm thread width, you can only build walls that are 0.4*n mm wide, where n runs from 1 to whatever; you can print a single-thread wall, but not easily.
If you specify "two threads" along each perimeter, then various slicers give different results for a wall that should be five threads wide: the center thread space may or may not be filled. Walls that are an odd number of threads wide may not fill the way you expect.
At an intersection of two straight walls, geometry says there's no way to lay parallel lines of a specified width into the acute corner, so the wall can't fill properly. You can convince yourself of all this by playing with Popsicle sticks, because they have a fixed width with nice, rounded ends, just like an extruded filament, and show what's possible: if you can't fill a wall's angle with sticks, the extruder can't do it, either.
The various slicers have different techniques of laying parallel threads into acute corners, so different objects produce different failures. For example, walls that should be three threads wide probably won't have a continuous thread between the walls through the corner, because the geometry doesn't work in the corners.
Some pictures of stuff I've done with thin walls:
Single-thread wall cookie cutter:
Double-thread wall cookie cutters, varying the extrusion multiplier:
Single- and double-thread fins:
Double-thread wall with a little fill:
Tiny support structures:
That's a separate question that doesn't depend on the presence or absence of infill; if you have the filament diameter and extrusion multiplier set correctly, then the extruder produces pretty nearly exactly the correct width all the time. I use a thin wall open box for that calibration:
The slicer then sets the perimeter thread locations to match the dimensions of the model; in effect, the outer threads are inset into the perimeter of the model. Again, there's a geometric factor in acute corners: you can't get a perfectly square corner with an extruded thread.
The two cylinders must have the same number of facets, so that you don't get a geometric misfit; for a 45 mm cylinder, you can probably stand 1 mm facets and have 140-sided polygons. The Popsicle stick analogy still holds: there must be enough clearance between the cylinders to fit the outside corners of the inner cylinder into the inside corners of the outer cylinder.
A bike helmet mirror mount with several nested cylinders (with a much smaller polygon count!) that have thin, filled walls:
The solid model for the mirror mount may be easier to see:
I routinely build walls with two threads and can fit three threads into smooth perimeters, but complex, angular, thin walls simply can't be filled with parallel extruded threads.
But you (and I!) can spend hours finding that out... [grin]