mirror of
https://github.com/2dust/v2rayN.git
synced 2025-07-01 12:32:10 +00:00
Improve speed test
This commit is contained in:
parent
785ebc49fc
commit
a3aa6c045f
6 changed files with 32 additions and 8 deletions
|
@ -16,7 +16,6 @@ namespace v2rayN.Base
|
||||||
{
|
{
|
||||||
private static HttpClientHelper httpClientHelper = null;
|
private static HttpClientHelper httpClientHelper = null;
|
||||||
private HttpClient httpClient;
|
private HttpClient httpClient;
|
||||||
private int progressPercentage = -1;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -120,7 +119,7 @@ namespace v2rayN.Base
|
||||||
var totalRead = 0L;
|
var totalRead = 0L;
|
||||||
var buffer = new byte[1024 * 1024];
|
var buffer = new byte[1024 * 1024];
|
||||||
var isMoreToRead = true;
|
var isMoreToRead = true;
|
||||||
progressPercentage = -1;
|
var progressPercentage = 0;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
|
@ -183,14 +182,24 @@ namespace v2rayN.Base
|
||||||
using (var stream = await response.Content.ReadAsStreamAsync())
|
using (var stream = await response.Content.ReadAsStreamAsync())
|
||||||
{
|
{
|
||||||
var totalRead = 0L;
|
var totalRead = 0L;
|
||||||
var buffer = new byte[1024 * 128];
|
var buffer = new byte[1024 * 64];
|
||||||
var isMoreToRead = true;
|
var isMoreToRead = true;
|
||||||
progressPercentage = -1;
|
var progressPercentage = 0;
|
||||||
DateTime totalDatetime = DateTime.Now;
|
DateTime totalDatetime = DateTime.Now;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
token.ThrowIfCancellationRequested();
|
if (token.IsCancellationRequested)
|
||||||
|
{
|
||||||
|
if (totalRead > 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
token.ThrowIfCancellationRequested();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var read = await stream.ReadAsync(buffer, 0, buffer.Length, token);
|
var read = await stream.ReadAsync(buffer, 0, buffer.Length, token);
|
||||||
|
|
||||||
|
@ -211,7 +220,7 @@ namespace v2rayN.Base
|
||||||
TimeSpan ts = (DateTime.Now - totalDatetime);
|
TimeSpan ts = (DateTime.Now - totalDatetime);
|
||||||
var speed = totalRead * 1d / ts.TotalMilliseconds / 1000;
|
var speed = totalRead * 1d / ts.TotalMilliseconds / 1000;
|
||||||
var percent = Convert.ToInt32((totalRead * 1d) / (total * 1d) * 100);
|
var percent = Convert.ToInt32((totalRead * 1d) / (total * 1d) * 100);
|
||||||
if (progressPercentage != percent && percent % 2 == 1)
|
if (progressPercentage != percent)
|
||||||
{
|
{
|
||||||
progressPercentage = percent;
|
progressPercentage = percent;
|
||||||
progress.Report(speed);
|
progress.Report(speed);
|
||||||
|
|
|
@ -39,7 +39,7 @@ namespace v2rayN.Handler
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
Utils.SetSecurityProtocol(LazyConfig.Instance.GetConfig().enableSecurityProtocolTls13);
|
Utils.SetSecurityProtocol(LazyConfig.Instance.GetConfig().enableSecurityProtocolTls13);
|
||||||
UpdateCompleted?.Invoke(this, new ResultEventArgs(false, ResUI.Downloading));
|
UpdateCompleted?.Invoke(this, new ResultEventArgs(false, ResUI.Speedtesting));
|
||||||
|
|
||||||
var client = new HttpClient(new WebRequestHandler()
|
var client = new HttpClient(new WebRequestHandler()
|
||||||
{
|
{
|
||||||
|
|
|
@ -187,7 +187,7 @@ namespace v2rayN.Handler
|
||||||
};
|
};
|
||||||
downloadHandle2.Error += (sender2, args) =>
|
downloadHandle2.Error += (sender2, args) =>
|
||||||
{
|
{
|
||||||
_updateFunc("", args.GetException().Message);
|
_updateFunc(testIndexId, args.GetException().Message);
|
||||||
};
|
};
|
||||||
|
|
||||||
var timeout = 8;
|
var timeout = 8;
|
||||||
|
|
9
v2rayN/v2rayN/Resx/ResUI.Designer.cs
generated
9
v2rayN/v2rayN/Resx/ResUI.Designer.cs
generated
|
@ -879,6 +879,15 @@ namespace v2rayN.Resx {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 Speed Test... 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
internal static string Speedtesting {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("Speedtesting", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 查找类似 PAC failed to start. Run it with Admin right. 的本地化字符串。
|
/// 查找类似 PAC failed to start. Run it with Admin right. 的本地化字符串。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -457,4 +457,7 @@
|
||||||
<data name="SystemProxy" xml:space="preserve">
|
<data name="SystemProxy" xml:space="preserve">
|
||||||
<value>System proxy</value>
|
<value>System proxy</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Speedtesting" xml:space="preserve">
|
||||||
|
<value>Speed Test...</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -457,4 +457,7 @@
|
||||||
<data name="SystemProxy" xml:space="preserve">
|
<data name="SystemProxy" xml:space="preserve">
|
||||||
<value>系统代理</value>
|
<value>系统代理</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Speedtesting" xml:space="preserve">
|
||||||
|
<value>测速中...</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
Loading…
Reference in a new issue