private List<int> DiffMethod(ThreadSafeFileLineQueue queueA, ThreadSafeFileLineQueue queueB) { var diffIndexes = new List<int>(); int lineIndex = 0; string lineA, lineB; while ((lineA = queueA.Dequeue()) != null & (lineB = queueB.Dequeue()) != null) { if (lineA != lineB) { diffIndexes.Add(lineIndex); } lineIndex++; } while (lineA != null) { diffIndexes.Add(lineIndex++); lineA = queueA.Dequeue(); } while (lineB != null) { diffIndexes.Add(lineIndex++); lineB = queueB.Dequeue(); } return diffIndexes; }