Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion NodeReact.Benchmarks/NodeReact.Benchmarks.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<LangVersion>7.1</LangVersion>
</PropertyGroup>
<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<AssemblyName>NodeReact.Sample.Streaming</AssemblyName>
<RootNamespace>NodeReact.Sample.Streaming</RootNamespace>
</PropertyGroup>
Expand Down
8 changes: 4 additions & 4 deletions NodeReact.Sample/ClientApp/components/index.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import HelloWorld from "./HelloWorld";
import RootComponent from "./RootComponent";
import App from "./App";
import HelloWorld from './HelloWorld';
import LoremIpsum from './LoremIpsum';
import RootComponent from './RootComponent';

export const components = {
HelloWorld,
RootComponent,
App,
LoremIpsum
};

try {
Expand Down
2 changes: 1 addition & 1 deletion NodeReact.Sample/NodeReact.Sample.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NodeReact\NodeReact.csproj" />
Expand Down
4 changes: 2 additions & 2 deletions NodeReact/NodeReact.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>net6.0;net7.0</TargetFrameworks>
<TargetFrameworks>net6.0;net7.0;net8.0</TargetFrameworks>

<Description>Library to render React library components on the server-side with C# as well as on the client.</Description>
<PackageTags>react, reactjs, nodejs</PackageTags>
Expand All @@ -22,7 +22,7 @@

<PackageReference Include="Jering.Javascript.NodeJS" Version="7.0.0-beta.3" />

<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="2.3.1" />
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />

<PackageReference Include="Yarn.MSBuild" Version="1.22.19" PrivateAssets="all" ExcludeAssets="Runtime">
Expand Down
11 changes: 7 additions & 4 deletions NodeReact/Utils/PooledStream.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,16 @@ static PooledStream()
var largeBufferMultiple = 1024 * 1024;
var maximumBufferSize = 128 * 1024 * 1024;

_manager = new RecyclableMemoryStreamManager(blockSize, largeBufferMultiple, maximumBufferSize)
_manager = new RecyclableMemoryStreamManager(new RecyclableMemoryStreamManager.Options()
{
BlockSize = blockSize,
LargeBufferMultiple = largeBufferMultiple,
MaximumBufferSize = maximumBufferSize,
GenerateCallStacks = true,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I played around with my own fork inspired by yours and got an error during hot reload.

Unable to cast object of type 'System.Attribute[]' to type 'System.Runtime.CompilerServices.StateMachineAttribute[]'.'

Turns out it was GenerateCallStacks = true, that did not play nice with hot reload, setting this to false solved the problem for me.

AggressiveBufferReturn = true,
MaximumFreeLargePoolBytes = largeBufferMultiple * 4,
MaximumFreeSmallPoolBytes = 250 * blockSize
};
MaximumLargePoolFreeBytes = largeBufferMultiple * 4,
MaximumSmallPoolFreeBytes = 250 * blockSize
});
}

public PooledStream()
Expand Down