Skip to content

Instantly share code, notes, and snippets.

@shirhatti
Last active January 8, 2020 20:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shirhatti/fe968ba5431714872c5786485bb0372c to your computer and use it in GitHub Desktop.
Save shirhatti/fe968ba5431714872c5786485bb0372c to your computer and use it in GitHub Desktop.
MemoryLeak
using System.Threading;
namespace MemoryLeak
{
public class EphemeralOperation
{
private Timer _timer;
private int _ticks;
public EphemeralOperation()
{
_timer = new Timer(state =>
{
_ticks++;
},
null,
dueTime: 1000,
period: 1000);
}
}
}
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
</Project>
using System.Threading;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Hosting;
namespace MemoryLeak
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace MemoryLeak
{
public class Startup
{
// This method gets called by the runtime. Use this method to add services to the container.
// For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
public void ConfigureServices(IServiceCollection services)
{
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapGet("/", async context =>
{
var operation = new EphemeralOperation();
// operation.DoSomething();
await context.Response.WriteAsync("Hello World!");
});
});
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment