Для начала, я думаю, что вы разместили код не работает должным образом, потому что метод Replace
заменит все экземпляров одного символа другим (не только последним), поэтому если есть другие символы, которые соответствуют последнему в строке, они также будут заменены.
Чтобы исправить это, код можно записать примерно так:
for (int i = 0; i < lines.Count - 1; i++)
{
lines[i] = lines[i].Substring(0, lines[i].Length - 1) + lines[i].First();
}
Для запуска этот код параллельно,. NET Framework имеет Parallel.For l oop, который можно использовать:
Parallel.For(0, lines.Count - 1, i =>
{
lines[i] = lines[i].Substring(0, lines[i].Length - 1) + lines[i].First();
});