2017年5月

PC版微信多开

PC版微信是可以多开的,有多种方法,很简单。

方法一、拼手速

练了多年的麒麟臂现在可以派上用场了,刚开机加载出桌面,能看到桌面上“微信”的快捷方式时,就开始拼命快速的点击,总会多点开几个的
窍门:电脑越卡手速越快越好。

方法二、批处理

这是一个技术型的方法,写个批处理,开机自动运行或者是自己去运行这个批处理文件,就可以打开多个微信了。
批处理的代码如下,很简单的:

start "" "C:\Program Files (x86)\Tencent\WeChat\WeChat.exe"
start "" "C:\Program Files (x86)\Tencent\WeChat\WeChat.exe"

这是打开两个微信的,需要打开多个的话,再多写几个就好了。
测试,好用。

方法三、最简单

桌面上的微信快捷方式,或微信安装目录下的微信启动程序,先用鼠标选中,之后按住回车键不放,数秒钟之后,应该就会打开多个了。

方法四、微信多开软件

下载所谓的微信多开工具,使用工具来实现多开。

C#多线程并发处理的问题

公司某业务,需要按条来处理大批量数据,大概几万条到几十万条都有可能。这个是由另外一个同事写的,写完之后测试,速度、效率都非常低。我问了下,原来是直接拿这些数据进行循环处理,之后又把有问题的数据循环入库。
这就有两个瓶颈,一个是单线程处理数据,另一个就是又一次循环入库。
我给出的建议是,处理数据部分多线程,处理完数据之后直接把有问题的数据入库。可是同事用不明白多线程,那好吧,我给写个Demo吧。
这里需要用到队列(Queue)和Task或Thread。我这里使用的是ConcurrentQueue,ConcurrentQueue队列是一个高效的线程安全的队列,是.Net Framework 4.0,System.Collections.Concurrent命名空间下的一个数据结构。
首先,实例化一个队列,名为queue:
private ConcurrentQueue<Models.Demo> queue;
之后,给这个队列填充上测试用的数据:

//生成测试用数据列表
for (int i = 1; i <= 50000; i++)
{
    Models.Demo dat = new Models.Demo() { id = i, value = Libs.Rand.RndCode(8) };
    queue.Enqueue(dat);
    Thread.Sleep(1);    //这里是随机数生成时需要
}

下面是处理启用多线程来处理数据了

int threadcount=10; //开启10个线程

for(int i=0;i<threadcount;i++)
{
    string filename = string.Format("task{0}.txt", i);
    filename = System.Web.HttpContext.Current.Request.MapPath(string.Format("~/file/{0}", filename));
    Task.Factory.StartNew(() =>
    {        
        Models.Demo demo = new Models.Demo();
        StringBuilder sb = new StringBuilder();
        int j = 0;
    
        while (queue.TryDequeue(out demo))
        {
            //处理数据
            if (demo != null)
                sb.AppendLine(string.Format("{0}.{1}", demo.id, demo.value));

            if (j % 100 == 0 ||  (queue.Count.Equals(0) && j<100))
            {   //每100条写一次文件,并暂停100毫秒
                Libs.FileObj.WriteFile(filename, sb.ToString());
                sb = new StringBuilder();
                Thread.Sleep(100); 
            }
            j++;
        }
    });
}

这就搞定了。以上。

还能剩下什么?

今天,又提到了要拆除202有轨电车
202,兴工街在这头,河口在那头
大连有轨电车,出生于1907年,卒于2017年(可能)
官方给出的理由,总是冠冕堂皇,却又漏洞百出
与地上公路混行,影响交通?
真是笑话,只有兴工街到解放广场这1公里好吧?!
如果说影响交通,那201早就应该拆了!
实际是影响地铁的上座率吧?
你们当官的,不坐地铁,不坐公交
你们体验过乘坐公共交通工具到高新园区上班吗?
你们体验过乘坐公共交通工具到西安路逛街吗?
你们在我们都已经工作了好几小时之后的交通平峰期,坐着空调小轿车,专职司机开车,警车开道,当然无法体验我们的感受
你们为了地铁盈利,不惜损害我们老百姓的利益,取消202
你们还有良心吗?
也是,谁让我们没本事,每天只能挤公交上班
也是,谁让我们没本事,还需要每天去上班
我们的父母官,恳请你们能好好的爱我们这些孩子吧

老体育场拆了,建商场
海之韵拆了
星海广场的华表拆了
202也要拆了
大连还有哪些没有拆的?
再这样拆下去,大连与其他城市还有什么区别?

现在的大连,还是大连吗?
再也没有作为大连人的自豪感
取而代之的是羞耻感
最后,我想说:
大连,想说爱你太难,为什么一直有昏官

我是硬盘杀手吗?

前段时间,新换了台电脑。
在台式机中的,标准机箱 or 小主机之间纠结了好长时间。
终于,在淘宝上发现了一家自己设计的小主机,看上去还不错。
于是,下单买了。
收到机器,立刻安装上。点亮,完美。
用了好些天,也适用了大屏幕。
突然,有一天,硬盘好卡。
磁盘占用100%,数据写入和读取为0。
查看系统日志,出现了129事件。
可恶的129事件,安照微软官网修改之,无效。
联系售后,售后听完大概的描述后,爽快的寄给我一块同款SSD硬盘。
收货,安装,重装系统,观察,测试。
还好,没有重现,问题解决了。
给售后寄回替换下来的SSD。
售后还是非常Nice的。
又可以爽爽的嗨皮了。
当感觉到幸福的时候,不幸就在身边。
好景不长,也就不到一周时间,也就是昨天晚上,不幸降临了。
打开Edge,电脑卡死数分钟无响应。
长按电源强制关机,数秒后开机。
卡在开机Logo无反应。
再次强制关机,数少后开机。
啊,彻底完蛋了,找不到系统盘了。
what?新换的硬盘又要坏了?
暂时,这个问题只是一个问号。
联系了售后,售后也很郁闷,一个月内坏了两次。
再一次爽快的给我快递了一块硬盘。
等待中。

PS:这个SSD硬盘是铭瑄的,正常人不要使用。
是的,我不是正常人,因为标配的就是这个硬盘,无法换成基本的。
除非,我是土豪,自己买一块换上。

我写完了。

-----------------2017年5月27日更新-----------------
昨天收到了新寄来的SSD硬盘。
是新盘,没开封的。
拆机,安装,装机。
开机,进BIOS,能看到SSD硬盘。
看来真的是SSD的问题。
重装系统,安软件,备份。
(完)

群晖系统Synology DSM安装ipkg包管理

到现在为止,也没弄清楚群晖系统发行版到底是什么,暂且就叫做Synology DSM系统吧,常用的源安装命令(yum/apg-get/ipkg等)都使用不了,不过我们可以通过下面方法来自行安装ipkg包管理工具。
首先确定系统的版本和CPU类型,下面的安装脚本适用于x86平台64位系统,ARM平台及32位系统是否能使用我这里不确定。
到群晖的管理后台,打开控制面板,在“终端机和SNMP”中,开启SSH功能,端口号默认为22,为了安全起见,建议修改成其他端口号。如果开启了防火墙,请注意确保SSH端口能通过防火墙。
开启SSH功能
开启SSH功能

打开终端,我使用的是PuTTY,使用群晖的管理员账号和密码登录,登录成功后,可使用下面命令切换到root账号:

sudo -i

之后输入密码(与管理员的密码相同)

下载bootstrap并安装:

wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/syno-i686-bootstrap_1.2-7_i686.xsh
chmod +x syno-i686-bootstrap_1.2-7_i686.xsh
sh syno-i686-bootstrap_1.2-7_i686.xsh

终端返回:

Optware Bootstrap for syno-i686.
Extracting archive... please wait
bootstrap/
bootstrap/bootstrap.sh
bootstrap/ipkg-opt.ipk
bootstrap/ipkg.sh
1216+1 records in
1216+1 records out
bootstrap/optware-bootstrap.ipk
bootstrap/wget.ipk
249302 bytes (249 kB) copied, 0.00421063 s, 59.2 MB/s
Creating temporary ipkg repository...
Installing optware-bootstrap package...
Unpacking optware-bootstrap.ipk...Done.
Configuring optware-bootstrap.ipk...Modifying /etc/rc.local
Done.
Installing ipkg...
Unpacking ipkg-opt.ipk...Done.
Configuring ipkg-opt.ipk...Done.
Removing temporary ipkg repository...
Installing wget...
Installing wget (1.12-2) to root...
Configuring wget
Successfully terminated.
Creating /opt/etc/ipkg/cross-feed.conf...
Setup complete.

安装完成,建议重启,不过我没重启也没问题,可以使用。
之后执行更新:

ipkg upate

如果执行ipkg失败,提示没有找到该命令(- ash : ipkg : command not found),需要添加一下环境变量:

#PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
#export PATH

我们来安装个Screen试一下:

root@DiskStation:~# ipkg install screen
Installing screen (4.0.3-2) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/s                                                                                                                     creen_4.0.3-2_i686.ipk
Installing termcap (1.3.1-2) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/t                                                                                                                     ermcap_1.3.1-2_i686.ipk
Configuring screen
Configuring termcap
Successfully terminated.

没问题。

卸载:

rm syno-i686-bootstrap_1.2-7_i686.xsh

以上。

分类

最新文章

最近回复

  • 老徐: 已经加上了,抱歉才看到
  • 青山: 某种原因,暂停友链,抱歉。
  • 搬瓦工: 朋友 交换链接吗
  • 飞刀说: 名称:飞刀说 描述:...
  • 青山: 计划搬迁到腾讯云,正...
  • 河边的飞刀: 网站名称:飞刀说 网...
  • 老徐: 具体要哪个呢?
  • 老徐: 是不是有点老?
  • 青山: 哇,林志炫
  • 老白: 哇,这改的可以,能不...

归档

标签云

C# .net core asp.net 情感 SQL mongodb sql server EasyUI 安全 激活 linux 身份验证 https typecho .net sql注入 kms MVC IIS 高并发 IE 坑爹 服务器 mysql Oracle Combobox Datagrid 口语 数据抓取

其它