# MemoryStreamQueueGrain Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorystreamqueuegrain/)

## Dequeue(int) {#dequeue-int-6bc3d9d3}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorystreamqueuegrain/methods/dequeue-int-6bc3d9d3/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Streaming/MemoryStreams/MemoryStreamQueueGrain.cs#L47-L54)

```csharp
public Task<List<MemoryMessageData>> Dequeue(int maxCount)
```

Dequeues up to a max amount of maxCount event data from the queue.

### Parameters

- `maxCount` (`int`)

## Enqueue(MemoryMessageData) {#enqueue-orleans-providers-memorymessagedata-c21feaeb}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorystreamqueuegrain/methods/enqueue-orleans-providers-memorymessagedata-c21feaeb/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Streaming/MemoryStreams/MemoryStreamQueueGrain.cs#L31-L37)

```csharp
public Task Enqueue(MemoryMessageData data)
```

Enqueues an event data. If the current total count reaches the max limit. throws an exception.

### Parameters

- `data` (`MemoryMessageData`)
