I think this is where we would apply Ockham's Razor. If someone spoke to me today about something that would last "for a generation" I would assume a fairly broad timespan, depending on the context. I'd guess 20-50 years, but not longer than that.
But I think it's fair if there is a consensus that, in the time Jesus' words were spoken, the term he used may have had a different connotation. Is this the case? I'm guessing that a person in that moment, hearing that phrase, would expect that the 'end' would come in their lifetimes. Is there a commonly-accepted explanation for a longer term than that?