процесс
Указывает, что управляемый процесс приложения должен иметь одну копию конкретной глобальной переменной, статической переменной-члена или статической локальной переменной, совместно используемой во всех доменах приложения в этом процессе. Это, в основном, предназначено для использования при компилировании с помощью /clr:pure, поскольку в /clr:pure глобальные и статические переменные по умолчанию используются в каждом домене приложения. При компилировании с использованием /clr глобальные и статические переменные по умолчанию используются для каждого процесса по отдельности (нет необходимости использовать __declspec(process)).
Только глобальная переменная, статическая переменная-член или статическая локальная переменная собственного типа может быть помечена __declspec(process).
При компилировании с /clr:pure переменные, помеченные для отдельных процессов, также должны объявляться как const. Это гарантирует, что переменные конкретных процессов не изменятся в одном домене приложения и не дадут неожиданных результатов в другом домене приложения. Основное целевое использование __declspec(process) — включить инициализацию времени компиляции глобальной переменной, статической переменной-члена или статической локальной переменной в /clr:pure.
process допустимо только при компилировании с /clr или /clr:pure и недопустимо при компилировании с /clr:safe.
Если требуется, чтобы каждый домен приложения имел собственную копию глобальной переменной, используйте appdomain.
Дополнительные сведения см. в разделе Домены приложений и Visual C++.