[PR #263] [CLOSED] BufferManager implementation #1064

Closed
opened 2026-02-27 15:52:59 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/quasar/Quasar/pull/263
Author: @yankejustin
Created: 6/5/2015
Status: Closed

Base: masterHead: NewBuff


📝 Commits (1)

  • e8fcc23 Implemented a BufferManager

📊 Changes

4 files changed (+15 additions, -6 deletions)

View changed files

📝 Server/Core/Client.cs (+6 -4)
📝 Server/Core/Helper/FileSplit.cs (+1 -1)
📝 Server/Core/Server.cs (+7 -1)
📝 Server/Server.csproj (+1 -0)

📄 Description

Changes

1. Implemented a BufferManager object to handle client's buffers.

Effects

- Use of a BufferManager class on the server to handle clients' buffers will greatly improve performance and memory resourcefulness. When a client is being disconnected or disposed of, we can return the allocated buffer back to the BufferManager so that it can be re-used. The concept behind this is that, instead of throwing away these expensive buffers, just keep them for other clients that can use them in the future.

Note on memory usage:

While high memory usage is likely (though less-likely), the Garbage Collector will run its course if we must have some more memory. The memory we really need to worry about will now be managed better by using this object to mess with the buffers. :)


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/quasar/Quasar/pull/263 **Author:** [@yankejustin](https://github.com/yankejustin) **Created:** 6/5/2015 **Status:** ❌ Closed **Base:** `master` ← **Head:** `NewBuff` --- ### 📝 Commits (1) - [`e8fcc23`](https://github.com/quasar/Quasar/commit/e8fcc23dd03e0462664bd2bbfbd292e5cca78564) Implemented a BufferManager ### 📊 Changes **4 files changed** (+15 additions, -6 deletions) <details> <summary>View changed files</summary> 📝 `Server/Core/Client.cs` (+6 -4) 📝 `Server/Core/Helper/FileSplit.cs` (+1 -1) 📝 `Server/Core/Server.cs` (+7 -1) 📝 `Server/Server.csproj` (+1 -0) </details> ### 📄 Description <h1>Changes</h1> 1. Implemented a BufferManager object to handle client's buffers. <h1>Effects</h1> - Use of a BufferManager class on the server to handle clients' buffers will greatly improve performance and memory resourcefulness. When a client is being disconnected or disposed of, we can return the allocated buffer back to the BufferManager so that it can be re-used. The concept behind this is that, instead of throwing away these expensive buffers, just keep them for other clients that can use them in the future. <hr /> <br /> <h1>Note on memory usage:</h1> While high memory usage is likely (though less-likely), the Garbage Collector will run its course if we must have some more memory. The memory we really need to worry about will now be managed better by using this object to mess with the buffers. :) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 15:52:59 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/Quasar#1064
No description provided.