src/Library/NetPro.Web.Api/Startup/NetProCoreStartup.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpOverrides;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System;
using System.NetPro;
using System.Reflection;
using System.Threading;
namespace NetPro.Web.Api.Startup
{
internal sealed class NetProCoreStartup : INetProStartup, System.NetPro.Startup.__._
{
//public double Order = 0;
public double Order { get; set; } = 0;
public void Configure(IApplicationBuilder application, IWebHostEnvironment env)
{
//转发头数据
application.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.All });
}
public void ConfigureServices(IServiceCollection services, IConfiguration configuration = null, ITypeFinder typeFinder = null)
{
var netProOption = services.ConfigureStartupConfig<NetProOption>(configuration.GetSection(nameof(NetProOption)));
services.ConfigureStartupConfig<HostingConfig>(configuration.GetSection("Hosting"));
if (string.IsNullOrWhiteSpace(netProOption.ApplicationName))
{
var serviceProvider = services.BuildServiceProvider();
//reset ApplicationName
serviceProvider.GetRequiredService<IHostEnvironment>().ApplicationName = Assembly.GetEntryAssembly().GetName().Name;
var hostEnvironment = serviceProvider.GetRequiredService<IHostEnvironment>();
netProOption.ApplicationName = hostEnvironment.ApplicationName;
}
//----------------
//由runtimeconfig.template.json 提供配置
/*
{
"configProperties": {
"System.GC.Server": true,//站点专用配置,默认false
"System.GC.HeapHardLimit": 83886080,堆上限,单位字节
"System.GC.HeapHardLimitPercent": 2,//堆上限,单位百分比
"System.GC.LOHThreshold": 1048576,//大对象定义,单位字节
"System.GC.Concurrent": true,//后台回收,默认true
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false,
"System.Threading.ThreadPool.MinThreads": 200
}
}
*/
ThreadPool.GetMinThreads(out int work, out int comple);
ThreadPool.GetAvailableThreads(out int worktemp, out int completemp);
Console.WriteLine($"[{DateTime.Now:HH:mm:ss} 核心数为:{Environment.ProcessorCount}--默认线程最小为:{work}--Available:{worktemp}");
}
}
后面还有 29 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。