Skip to content

Latest commit

 

History

History
34 lines (28 loc) · 2.11 KB

process.md

File metadata and controls

34 lines (28 loc) · 2.11 KB
title ms.custom ms.date ms.reviewer ms.suite ms.technology ms.tgt_pltfrm ms.topic f1_keywords dev_langs helpviewer_keywords ms.assetid caps.latest.revision author ms.author manager
process | Microsoft Docs
11/04/2016
cpp-language
language-reference
process_cpp
C++
__declspec keyword [C++], process
process __declspec keyword
60eecc2f-4eef-4567-b9db-aaed34733023
16
mikeblome
mblome
ghogen

process

Specifies that your managed application process should have a single copy of a particular global variable, static member variable, or static local variable shared across all application domains in the process. This is primarily intended to be used when compiling with /clr:pure, because under /clr:pure global and static variables are per application domain, by default. The /clr:pure and /clr:safe compiler options are deprecated in Visual Studio 2015. When compiling with /clr, global and static variables are per process by default (do not need to use __declspec(process).

Only a global variable, a static member variable, or a static local variable of native type can be marked with __declspec(process).

When compiling with /clr:pure, variables marked as per process must also be declared as const. This ensures that per process variables are not changed in one application domain, and giving unexpected results in another application domain. The primary intended use of __declspec(process) is to enable compile time initialization of a global variable, static member variable, or static local variable under /clr:pure.

process is only valid when compiling with /clr or /clr:pure and is not valid when compiling with /clr:safe.

If you want each application domain to have its own copy of a global variable, use appdomain.

See Application Domains and Visual C++ for more information.

See Also

__declspec
Keywords