Confused. I thought the question was about Nick Willis, not about anyone who ever had a long sub 4 streak.
that's okay, life can be confusing sometimes.
OP asked, "How many years in a row has Nick Willis gone sub 4?" but he also asked whether his streak was longer than Bernard Lagat's.
then OXycogofg asked, "So is 16 years the record? Maybe Scott or O’Sullivan or Coghlan... have a longer streak."
and in the very next post Lemon Lime 5000 metre runner asked, "Did John Walker run a sub 4 min mile in 1978?"
so you see, there are many questions, most of which can be answered with a list of who has or has not had a streak. the list answers OP's question as to how many years Willis has run sub-4. the answer is 16 years. the list answers OP's question as to whether Willis' streak is longer than Lagat's, it is, by 2 years. the list answers OXycogofg's question as to whether that is the record, it is not. the list answers OXycogofg's question as to whether Scott or O'Sullivan or Coghlan have longer streaks, Scott and O'Sullivan do, but Coghlan does not. and the list answers Lemon Lime 5000 metre runner's question as to whether John Walker ran a sub-4 mile in 1978. he did, because his streak runs from 1973 - 1990, which includes 1978.