You're right about the "parallel" bit, of course. But dissolving on bearing followed by normalization and decomposition will lose the individual attributes that the lines had before, such as the airport at which each line is located.
Knowing more about the attributes each line has would help. If it's a data set of airport runway line segments, one would expect (I know... it's a mistake to expect anything in a data set...) that in addition to the name of the airport there would be some sort of runway identifier that distinguishes the various runways from each other. Usually the name is some sort of concatenation of the runway bearings in each direction, like runway "90/270" or just the shortest direction from 0 to 180, like runway "90". If there are parallel runways on the same heading, as there are at many big airports around the world, they usually have postfixes like "90A" and "90B". So you could concatenate the airport name to the runway name to get a unique identifying field for the line objects associated with each runway.
You're also right about bent lines, since runways are generally thought of as straight.
But all the same, runways might well be represented by lines that are straight over their primary length but with right angle segment of about 100 meters at each end that represents the part of the taxiway at the beginning or end of the runway which legally is part of the runway. When planes are told by ground controllers to "hold short" of the runway on the taxiway, they have to stop before the multiple line demarcation drawn on the taxiway that's about 50 - 100 meters before the very long, straight, portion of the runway itself. I wouldn't be surprised if in a "runways" data set that short right-angled segment that is legally part of the runway is included as a line segment for that runway. There would also be a similar situation for short segments adjacent to the runway of any high speed taxiways connecting to the runway at locations between the beginning and end of the runway.
If attributes that uniquely identify each set of lines associated with a "runway" are available, then I think a merge based on attributes would deal with the above issues.