You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-functions/create-first-function-cli-csharp.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -119,7 +119,7 @@ The return object is an [ActionResult](/dotnet/api/microsoft.aspnetcore.mvc.acti
119
119
120
120
# [Isolated process](#tab/isolated-process)
121
121
122
-
*HttpExample.cs* contains a `Run` method that receives request data in the `req` variable is an [HttpRequestData](/dotnet/api/microsoft.azure.functions.worker.http.httprequestdata) object that's decorated with the **HttpTriggerAttribute**, which defines the trigger behavior. Because of the isolated process model, `HttpRequestData` is a representation of the actual `HttpRequest`, and not the request object itself.
122
+
*HttpExample.cs* contains a `Run` method that receives request data in the `req` variable is an [HttpRequestData](/dotnet/api/microsoft.azure.functions.worker.http.httprequestdata) object that's decorated with the **HttpTriggerAttribute**, which defines the trigger behavior. Because of the isolated worker process model, `HttpRequestData` is a representation of the actual `HttpRequest`, and not the request object itself.
In this article, you use Visual Studio Code to create a C# function that responds to HTTP requests. After testing the code locally, you deploy it to the serverless environment of Azure Functions. This article creates an HTTP triggered function that runs on .NET 6.0. There's also a [CLI-based version](create-first-function-cli-csharp.md) of this article.
17
17
18
-
By default, this article shows you how to create C# functions that run [in the same process as the Functions host](functions-dotnet-class-library.md). These _in-process_ C# functions are only supported on Long Term Support (LTS) versions of .NET, such as .NET 6. To create C# functions on .NET 6 that can also run on [other supported versions](functions-versions.md) for Azure functions [in an isolated process](dotnet-isolated-process-guide.md).
18
+
By default, this article shows you how to create C# functions that run [in the same process as the Functions host](functions-dotnet-class-library.md). These _in-process_ C# functions are only supported on Long Term Support (LTS) versions of .NET, such as .NET 6. To create C# functions on .NET 6 that can also run on [other supported versions](functions-versions.md) for Azure functions [in an isolated worker process](dotnet-isolated-process-guide.md).
19
19
20
20
Completing this quickstart incurs a small cost of a few USD cents or less in your Azure account.
Copy file name to clipboardExpand all lines: articles/azure-functions/dotnet-isolated-process-guide.md
+14-14
Original file line number
Diff line number
Diff line change
@@ -1,26 +1,26 @@
1
1
---
2
-
title: Guide for running C# Azure Functions in an isolated process
3
-
description: Learn how to use a .NET isolated process to run your C# functions in Azure, which supports .NET 5.0 and later versions.
2
+
title: Guide for running C# Azure Functions in an isolated worker process
3
+
description: Learn how to use a .NET isolated worker process to run your C# functions in Azure, which supports non-LTS versions of .NET and .NET Framework apps.
4
4
5
5
ms.service: azure-functions
6
6
ms.topic: conceptual
7
7
ms.date: 09/29/2022
8
8
ms.custom: template-concept
9
9
recommendations: false
10
-
#Customer intent: As a developer, I need to know how to create functions that run in an isolated process so that I can run my function code on current (not LTS) releases of .NET.
10
+
#Customer intent: As a developer, I need to know how to create functions that run in an isolated worker process so that I can run my function code on current (not LTS) releases of .NET.
11
11
---
12
12
13
-
# Guide for running C# Azure Functions in an isolated process
13
+
# Guide for running C# Azure Functions in an isolated worker process
14
14
15
-
This article is an introduction to using C# to develop .NET isolated process functions, which runs Azure Functions in an isolated process. This allows you to decouple your function code from the Azure Functions runtime, check out [supported version](#supported-versions) for Azure functions in an isolated process. [In-process C# class library functions](functions-dotnet-class-library.md) aren't supported on .NET 7.0.
15
+
This article is an introduction to using C# to develop .NET isolated worker process functions, which runs Azure Functions in an isolated worker process. This allows you to decouple your function code from the Azure Functions runtime, check out [supported version](#supported-versions) for Azure functions in an isolated worker process. [In-process C# class library functions](functions-dotnet-class-library.md) aren't supported on .NET 7.0.
16
16
17
17
| Getting started | Concepts| Samples |
18
18
|--|--|--|
19
19
| <ul><li>[Using Visual Studio Code](create-first-function-vs-code-csharp.md?tabs=isolated-process)</li><li>[Using command line tools](create-first-function-cli-csharp.md?tabs=isolated-process)</li><li>[Using Visual Studio](functions-create-your-first-function-visual-studio.md?tabs=isolated-process)</li></ul> | <ul><li>[Hosting options](functions-scale.md)</li><li>[Monitoring](functions-monitoring.md)</li> | <ul><li>[Reference samples](https://github.com/Azure/azure-functions-dotnet-worker/tree/main/samples)</li></ul> |
20
20
21
-
## Why .NET isolated process?
21
+
## Why .NET isolated worker process?
22
22
23
-
Previously Azure Functions has only supported a tightly integrated mode for .NET functions, which run [as a class library](functions-dotnet-class-library.md) in the same process as the host. This mode provides deep integration between the host process and the functions. For example, .NET class library functions can share binding APIs and types. However, this integration also requires a tighter coupling between the host process and the .NET function. For example, .NET functions running in-process are required to run on the same version of .NET as the Functions runtime. To enable you to run outside these constraints, you can now choose to run in an isolated process. This process isolation also lets you develop functions that use current .NET releases (such as .NET 7.0), not natively supported by the Functions runtime. Both isolated process and in-process C# class library functions run on .NET 6.0. To learn more, see [Supported versions](#supported-versions).
23
+
Previously Azure Functions has only supported a tightly integrated mode for .NET functions, which run [as a class library](functions-dotnet-class-library.md) in the same process as the host. This mode provides deep integration between the host process and the functions. For example, .NET class library functions can share binding APIs and types. However, this integration also requires a tighter coupling between the host process and the .NET function. For example, .NET functions running in-process are required to run on the same version of .NET as the Functions runtime. To enable you to run outside these constraints, you can now choose to run in an isolated worker process. This process isolation also lets you develop functions that use current .NET releases (such as .NET 7.0), not natively supported by the Functions runtime. Both isolated worker process and in-process C# class library functions run on .NET 6.0. To learn more, see [Supported versions](#supported-versions).
24
24
25
25
Because these functions run in a separate process, there are some [feature and functionality differences](#differences-with-net-class-library-functions) between .NET isolated function apps and .NET class library function apps.
26
26
@@ -55,14 +55,14 @@ When your functions run out-of-process, your .NET project uses a unique set of p
55
55
56
56
### Core packages
57
57
58
-
The following packages are required to run your .NET functions in an isolated process:
58
+
The following packages are required to run your .NET functions in an isolated worker process:
Because functions that run in a .NET isolated process use different binding types, they require a unique set of binding extension packages.
65
+
Because functions that run in a .NET isolated worker process use different binding types, they require a unique set of binding extension packages.
66
66
67
67
You'll find these extension packages under [Microsoft.Azure.Functions.Worker.Extensions](https://www.nuget.org/packages?q=Microsoft.Azure.Functions.Worker.Extensions).
68
68
@@ -85,7 +85,7 @@ A [HostBuilder] is used to build and return a fully initialized [IHost] instance
85
85
86
86
### Configuration
87
87
88
-
The [ConfigureFunctionsWorkerDefaults] method is used to add the settings required for the function app to run in an isolated process, which includes the following functionality:
88
+
The [ConfigureFunctionsWorkerDefaults] method is used to add the settings required for the function app to run in an isolated worker process, which includes the following functionality:
89
89
90
90
+ Default set of converters.
91
91
+ Set the default [JsonSerializerOptions] to ignore casing on property names.
@@ -140,7 +140,7 @@ For a more complete example of using custom middleware in your function app, see
140
140
141
141
A function can accept a [CancellationToken](/dotnet/api/system.threading.cancellationtoken) parameter, which enables the operating system to notify your code when the function is about to be terminated. You can use this notification to make sure the function doesn't terminate unexpectedly in a way that leaves data in an inconsistent state.
142
142
143
-
Cancellation tokens are supported in .NET functions when running in an isolated process. The following example raises an exception when a cancellation request has been received:
143
+
Cancellation tokens are supported in .NET functions when running in an isolated worker process. The following example raises an exception when a cancellation request has been received:
@@ -152,7 +152,7 @@ The following example performs clean-up actions if a cancellation request has be
152
152
153
153
You can compile your function app as [ReadyToRun binaries](/dotnet/core/deploying/ready-to-run). ReadyToRun is a form of ahead-of-time compilation that can improve startup performance to help reduce the impact of [cold-start](event-driven-scaling.md#cold-start) when running in a [Consumption plan](consumption-plan.md).
154
154
155
-
ReadyToRun is available in .NET 3.1, .NET 6 (both in-process and isolated process), and .NET 7, and it requires [version 3.0 or later](functions-versions.md) of the Azure Functions runtime.
155
+
ReadyToRun is available in .NET 3.1, .NET 6 (both in-process and isolated worker process), and .NET 7, and it requires [version 3.0 or later](functions-versions.md) of the Azure Functions runtime.
156
156
157
157
To compile your project as ReadyToRun, update your project file by adding the `<PublishReadyToRun>` and `<RuntimeIdentifier>` elements. The following is the configuration for publishing to a Windows 32-bit function app.
Next, you need to manually attach to the process using a .NET Framework debugger. Visual Studio doesn't do this automatically for isolated process .NET Framework apps yet, and the "Start Debugging" operation should be avoided.
259
+
Next, you need to manually attach to the process using a .NET Framework debugger. Visual Studio doesn't do this automatically for isolated worker process .NET Framework apps yet, and the "Start Debugging" operation should be avoided.
260
260
261
261
In your project directory (or its build output directory), run:
262
262
@@ -302,7 +302,7 @@ This section describes the current state of the functional and behavioral differ
302
302
303
303
## Remote Debugging using Visual Studio
304
304
305
-
Because your isolated process app runs outside the Functions runtime, you need to attach the remote debugger to a separate process. To learn more about debugging using Visual Studio, see [Remote Debugging](functions-develop-vs.md?tabs=isolated-process#remote-debugging).
305
+
Because your isolated worker process app runs outside the Functions runtime, you need to attach the remote debugger to a separate process. To learn more about debugging using Visual Studio, see [Remote Debugging](functions-develop-vs.md?tabs=isolated-process#remote-debugging).
306
306
## Next steps
307
307
308
308
+[Learn more about triggers and bindings](functions-triggers-bindings.md)
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-bindings-azure-sql.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -33,10 +33,10 @@ Add the extension to your project by installing this [NuGet package](https://www
33
33
34
34
# [Isolated process](#tab/isolated-process)
35
35
36
-
Functions execute in an isolated C# worker process. To learn more, see [Guide for running C# Azure Functions in an isolated process](dotnet-isolated-process-guide.md).
36
+
Functions execute in an isolated C# worker process. To learn more, see [Guide for running C# Azure Functions in an isolated worker process](dotnet-isolated-process-guide.md).
37
37
38
38
> [!NOTE]
39
-
> In the current preview, Azure SQL bindings aren't supported when your function app runs in an isolated process.
39
+
> In the current preview, Azure SQL bindings aren't supported when your function app runs in an isolated worker process.
40
40
41
41
<!--
42
42
Add the extension to your project by installing this [NuGet package](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.SignalRService/).
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-bindings-cosmosdb-v2-input.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -1689,7 +1689,7 @@ Here's the binding data in the *function.json* file:
1689
1689
::: zone pivot="programming-language-csharp"
1690
1690
## Attributes
1691
1691
1692
-
Both [in-process](functions-dotnet-class-library.md) and [isolated process](dotnet-isolated-process-guide.md) C# libraries use attributes to define the function. C# script instead uses a function.json configuration file.
1692
+
Both [in-process](functions-dotnet-class-library.md) and [isolated worker process](dotnet-isolated-process-guide.md) C# libraries use attributes to define the function. C# script instead uses a function.json configuration file.
Both [in-process](functions-dotnet-class-library.md) and [isolated process](dotnet-isolated-process-guide.md) C# libraries use attributes to define the function. C# script instead uses a function.json configuration file.
629
+
Both [in-process](functions-dotnet-class-library.md) and [isolated worker process](dotnet-isolated-process-guide.md) C# libraries use attributes to define the function. C# script instead uses a function.json configuration file.
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-bindings-cosmosdb-v2-trigger.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -26,7 +26,7 @@ An in-process class library is a compiled C# function runs in the same process a
26
26
27
27
# [Isolated process](#tab/isolated-process)
28
28
29
-
An isolated process class library compiled C# function runs in a process isolated from the runtime. Isolated process is required to support C# functions running on .NET 5.0.
29
+
An isolated worker process class library compiled C# function runs in a process isolated from the runtime.
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-bindings-cosmosdb-v2.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -41,7 +41,7 @@ Functions execute in the same process as the Functions host. To learn more, see
41
41
42
42
# [Isolated process](#tab/isolated-process)
43
43
44
-
Functions execute in an isolated C# worker process. To learn more, see [Guide for running functions on .NET 5.0 in Azure](dotnet-isolated-process-guide.md).
44
+
Functions execute in an isolated C# worker process. To learn more, see [Guide for running C# Azure Functions in an isolated worker process](dotnet-isolated-process-guide.md).
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-bindings-event-grid-output.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -26,7 +26,7 @@ For information on setup and configuration details, see [How to work with Event
26
26
The type of the output parameter used with an Event Grid output binding depends on the Functions runtime version, the binding extension version, and the modality of the C# function. The C# function can be created using one of the following C# modes:
27
27
28
28
*[In-process class library](functions-dotnet-class-library.md): compiled C# function that runs in the same process as the Functions runtime.
29
-
*[Isolated process class library](dotnet-isolated-process-guide.md): compiled C# function that runs in a process isolated from the runtime. Isolated process is required to support C# functions running on .NET 5.0.
29
+
*[Isolated worker process class library](dotnet-isolated-process-guide.md): compiled C# function that runs in a worker process isolated from the runtime.
30
30
*[C# script](functions-reference-csharp.md): used primarily when creating C# functions in the Azure portal.
Both [in-process](functions-dotnet-class-library.md) and [isolated process](dotnet-isolated-process-guide.md) C# libraries use attribute to configure the binding. C# script instead uses a function.json configuration file.
444
+
Both [in-process](functions-dotnet-class-library.md) and [isolated worker process](dotnet-isolated-process-guide.md) C# libraries use attribute to configure the binding. C# script instead uses a function.json configuration file.
445
445
446
446
The attribute's constructor takes the name of an application setting that contains the name of the custom topic, and the name of an application setting that contains the topic key.
447
447
@@ -564,7 +564,7 @@ Requires you to define a custom type, or use a string. See the [Example section]
0 commit comments