Skip to content

Commit

Permalink
优化关注列表导入速度
Browse files Browse the repository at this point in the history
  • Loading branch information
CHKZL committed Oct 30, 2020
1 parent b4f8ddf commit 3e102cb
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 14 deletions.
19 changes: 14 additions & 5 deletions Auxiliary/MMPU.cs
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,8 @@ public static string 获取网页数据_下载视频用(string url, bool 解码)
}
public class 加载网络房间方法
{
public static List<列表加载缓存> 列表缓存 = new List<列表加载缓存>();
public static List<列表加载缓存> 列表缓存1 = new List<列表加载缓存>();
public static List<列表加载缓存> 列表缓存2 = new List<列表加载缓存>();
public static bool 是否正在缓存 = false;
public static void 更新网络房间缓存()
{
Expand Down Expand Up @@ -510,22 +511,29 @@ public static void 更新网络房间缓存()
}
JArray result = JArray.Parse(roomHtml);
InfoLog.InfoPrintf("网络房间缓存下载完成,开始预处理", InfoLog.InfoClass.Debug);
列表缓存2.Clear();
foreach (var item in result)
{
if(int.Parse(item["roomid"].ToString())!=0)
{
列表缓存.Add(new 列表加载缓存
列表缓存2.Add(new 列表加载缓存
{
编号 = A,
roomId = item["roomid"].ToString(),
名称 = item["uname"].ToString(),
官方名称 = item["uname"].ToString(),
平台 = "bilibili",
UID = item["roomid"].ToString(),
UID = item["mid"].ToString(),
类型 = "V"
});
}) ;
A++;
}
else
{
;
}
}
列表缓存1 = 列表缓存2;
//foreach (var item in result["vtbs"])
//{
// foreach (var x in item["accounts"])
Expand All @@ -535,7 +543,7 @@ public static void 更新网络房间缓存()
// string name = item["name"][item["name"]["default"].ToString()].ToString();
// if (x["platform"].ToString() == "bilibili")
// {

// 列表缓存.Add(new 列表加载缓存
// {
// 编号 = A,
Expand Down Expand Up @@ -600,6 +608,7 @@ public class 列表加载缓存
public string 平台 { set; get; }
public string UID { set; get; }
public string 类型 { set; get; }
public string roomId { set; get; }
}

public class 选中的网络房间
Expand Down
25 changes: 20 additions & 5 deletions DDTV_New/AddList.cs
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ public static void 导入VTBVUP(Action<string> callback, System.Windows.Window W
JObject BB = bilibili.根据UID获取关注列表(MMPU.UID);
foreach (var 账号关注数据 in BB["data"])
{
foreach (var 网络房间数据 in MMPU.加载网络房间方法.列表缓存)
foreach (var 网络房间数据 in MMPU.加载网络房间方法.列表缓存1)
{
if (账号关注数据["UID"].ToString() == 网络房间数据.UID)
{
Expand All @@ -66,7 +66,7 @@ public static void 导入VTBVUP(Action<string> callback, System.Windows.Window W
名称 = 网络房间数据.名称,
官方名称 = 网络房间数据.官方名称,
平台 = 网络房间数据.平台,
房间号 = null,
房间号 = 网络房间数据.roomId,
编号 = 0
});
break;
Expand All @@ -75,11 +75,22 @@ public static void 导入VTBVUP(Action<string> callback, System.Windows.Window W
}
foreach (var 符合条件的 in 符合条件的房间)
{
bool BF = false;
if (!string.IsNullOrEmpty(符合条件的.UID))
{
string 房间号 = bilibili.通过UID获取房间号(符合条件的.UID);
string 房间号 = string.Empty;
if (string.IsNullOrEmpty(符合条件的.房间号))
{
BF = true;
房间号 = bilibili.通过UID获取房间号(符合条件的.UID);

符合条件的.房间号 = 房间号;
符合条件的.房间号 = 房间号;
}
else
{
房间号 = 符合条件的.房间号 ;
}

bool 是否已经存在 = false;
foreach (var item in bilibili.RoomList)
{
Expand All @@ -99,7 +110,11 @@ public static void 导入VTBVUP(Action<string> callback, System.Windows.Window W
已经存在的数量++;
}
}
Thread.Sleep(200);
if(BF)
{
Thread.Sleep(200);
}

}
string JOO = JsonConvert.SerializeObject(RB);
MMPU.储存文本(JOO, RoomConfigFile);
Expand Down
2 changes: 1 addition & 1 deletion DDTV_New/window/FirstTimeSetupWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ private void 导入VTBVUP(Action<int,int> callback)
JObject BB = bilibili.根据UID获取关注列表(MMPU.UID);
foreach (var 账号关注数据 in BB["data"])
{
foreach (var 网络房间数据 in MMPU.加载网络房间方法.列表缓存)
foreach (var 网络房间数据 in MMPU.加载网络房间方法.列表缓存1)
{
if (账号关注数据["UID"].ToString() == 网络房间数据.UID)
{
Expand Down
6 changes: 3 additions & 3 deletions DDTV_New/window/NetWorkRoomList.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ private void Button_Click(object sender, RoutedEventArgs e)
选中内容展示.Content = "更新中";
NewThreadTask.Run(runOnLocalThread =>
{
if (MMPU.加载网络房间方法.列表缓存.Count < 1)
if (MMPU.加载网络房间方法.列表缓存1.Count < 1)
{
MessageBox.Show("网络缓存同步未完成,请稍后再试");
MMPU.加载网络房间方法.更新网络房间缓存();
Expand All @@ -42,7 +42,7 @@ private void Button_Click(object sender, RoutedEventArgs e)
runOnLocalThread(() =>
{
NetWorkRoomList.Items.Clear();
foreach (var item in MMPU.加载网络房间方法.列表缓存)
foreach (var item in MMPU.加载网络房间方法.列表缓存1)
{
NetWorkRoomList.Items.Add(new
{
Expand Down Expand Up @@ -114,7 +114,7 @@ private void 搜索按钮_Click(object sender, RoutedEventArgs e)
if (!string.IsNullOrEmpty(搜索内容))
{
int B = 1;
foreach (var item in MMPU.加载网络房间方法.列表缓存)
foreach (var item in MMPU.加载网络房间方法.列表缓存1)
{
if (item.名称.Contains(搜索内容) || item.官方名称.Contains(搜索内容) || item.UID.Contains(搜索内容))
{
Expand Down

0 comments on commit 3e102cb

Please sign in to comment.