# Factory&lt;TParam1, TInstance&gt;

Package: [Microsoft.Orleans.Core](/orleans/docs/api/csharp/microsoft.orleans.core/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Core)

```csharp
public delegate TInstance Factory<TParam1, TInstance>(TParam1 param1);
```

Creates an instance of `TInstance`.

## Returns

The instance.

## Type parameters

- `TInstance`: The instance type.
- `TParam1`: The parameter type.

## Constructors

- [Factory&lt;TParam1, TInstance&gt;(object, nint)](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.factory-2/constructors/constructor-object-nint-89d61d18/)

## Methods

- [BeginInvoke(TParam1, AsyncCallback, object)](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.factory-2/methods/begininvoke-tparam1-system-asynccallback-object-cc3da73a/)
- [EndInvoke(IAsyncResult)](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.factory-2/methods/endinvoke-system-iasyncresult-766c1cae/)
