Как хранить объекты типа Process и массивы в одной коллекции?
Когда методом GetProcesses() я получаю все процессы то вижу, что некоторые процессы имеют одинаковые названия. И мне надо в коллекции хранить одиночные процессы и массивы процессов с одинаковыми названиями. То есть вот так:
исходите из того, как вам потом эти данные использовать.
предположим, если бы эту коллекцию пришлось отображать по уникальному имени, то можно, например, сразу сложить в словарь, в котором ключ - имя процесса:
var processes = new Dictionary<string, Process[]>
{
{ "procname1", [proc1] },
{ "procname2", [proc21, proc22] },
};
rad95, не надо использовать ArrayList - это легаси. И не имет смысла в вашем кейсе различать процессы по именам - проще хранить объекты целиком - с именем и PID, или хранить список из массивов процессов.
Василий Банников, у меня программа - микшер громкости. И она всегда проверяет процессы на дубликаты, чтобы громкость корректно регулировалась. И я хотел оптимизировать - найти один раз и запомнить, а не искать при каждом изменении слайдера. Так что это конечно вариант, но я думаю не очень по скорости.
rad95, а в чём смысл проверять на дубликаты? Вы же не по имени громкость регулируете, а по PID. Или там есть какая-то хитрая группировка одноимённых процессов, чтобы регулировать все сразу?