# IMemoryStreamQueueGrain Methods

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

## Dequeue(int) {#dequeue-int-031c1820}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.imemorystreamqueuegrain/methods/dequeue-int-031c1820/)

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

Dequeues up to `maxCount` events.

### Parameters

- `maxCount` (`int`): The maximum number of events to dequeue.

### Returns

A `System.Threading.Tasks.Task` representing the operation.

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

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.imemorystreamqueuegrain/methods/enqueue-orleans-providers-memorymessagedata-587fa924/)

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

Enqueues an event.

### Parameters

- `data` (`MemoryMessageData`): The data.

### Returns

A `System.Threading.Tasks.Task` representing the operation.
