- 博客(52)
- 收藏
- 关注
原创 278. First Bad Version
给出n个版本[1,2,...,n],找出第一个错误的版本,即版本出错可能是:[false, false, false, true, true]。
2018-06-28 10:28:26 313
原创 在Macbook中安装破解版软件后出现“文件已损坏”的解决办法
今天,用着PDF expert好好的,结果退出之后突然弹窗显示“需要激活”,破解的软件失效了。APP store中388的售价实在是难以接受,好在当初的破解软件都有备份,直接重新安装即可。但是在重新安装后,打开程序显示“文件已损坏,请移动到废纸篓中”这个问题,在网上有重新找了几个版本,也没有办法安装,最后找到原因是因为:这个安装软件是经过破解的,因此,mac系统会默认该安装文件已经损害...
2018-06-24 21:49:31 12912
原创 532. K-diff Pairs in an Array
找到这样的整数对(i,j),其中i和j都是数组中的数字,它们的绝对差值是k,其中,不计算重复的对。
2018-06-22 20:35:09 131
原创 利用Unity实现一个简单的TCP通讯工具
在这样的一个简单的通讯工具中,首先要实现的是两个模块:服务器端(server)客户端(client)其中server端,利用VS写一个控制台程序来实现。 client端则利用Unity3D软件来实现。使用的语言都是C#。1, SeverServer端主要有两个类,一个Program类为主类,Client类不是客户端,是专门处理用户端的发送信息的类。 在Progra...
2018-06-21 15:39:06 3902 1
原创 581. Shortest Unsorted Continuous Subarray
找到一个连续的子数组,如果你只按升序对这个子数组进行排序,那么整个数组也将按照升序排序。
2018-06-16 12:34:13 357
原创 C#中的Socket编程-TCP客户端
TCP客户端using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Net.Sockets;using System.Text;using System.Threading.Tasks;namespace TCP_client_communic...
2018-06-12 12:48:49 7014
原创 C#中的Socket编程-TCP服务器端
TCP服务器class Program { static void Main() { //1,创建一个Socket //第一个参数表示一个内网,第二个参数表示以流的形式通信,第三个表示用TCP协议通信 Socket tcpServer = new Socket(AddressFamily.InterNetwork, SocketType....
2018-06-11 20:04:52 1333
原创 C#中的争用条件与死锁问题
争用条件对于两个异步执行的线程,如果同时请求同一个对象,会造成读取数据出现问题。 首先,定义一个类:class MyThreadObject { private int state = 5; public void ChangeState() { state++; if (st...
2018-06-10 12:46:48 941
原创 C#中的任务其他知识点
任务的其他知识连续任务如果一个任务t1的执行是依赖于另一个任务t2的,那么就需要这个任务t2执行完毕后再开始执行t1.这个时候需要使用连续任务。static void DoFirst() { Console.WriteLine("do in task : "+Task.CurrentId); Thread.Sleep(3000); }...
2018-06-09 12:16:46 261 1
原创 C#中的线程开启方式4-任务
任务开启第一种方式class Program { static void ThreadMethod() { Console.WriteLine("任务开始"); Thread.Sleep(2000); Console.WriteLine("任务结束"); } static void Main() {...
2018-06-09 11:04:43 478
原创 C#中的线程开启方式3-线程池
线程池创建线程需要时间。如果有不同的小任务需要完成,则可以事先创建许多的线程,对应完成这些任务时发生的线程请求。这个线程数最好在需要更多的线程时增加,在需要释放资源时减少。 而对应的这个线程池,不需要用户去自己创建。系统中已经有一个ThreadPool类来管理线程。 这个类会在需要时增减池中的线程的个数,直到达到最大的线程数。 池中的最大线程数是可配置的。在双核CPU中,默认设置为102...
2018-06-08 22:18:30 2946
原创 C#中线程的其他概念
后台线程和前台线程只有一个前台线程在运行,应用程序的进程就在运行。如果多个前台线程在运行,但是Main方法结束了,应用程序的进程仍然是运行的,直到所有的线程完成其任务为止。 在默认的情况下,用Thread类创建的线程是前台线程。线程池中的线程是后台线程。 在用Thread类创建线程的时候,可以设置IsBackground属性,表示它是一个前台线程还是后台线程。后台线程使用的地方: 例...
2018-06-08 11:10:59 140
原创 C#中线程的开启方式2-通过Thread类
通过Thread类开启线程普通的静态方法class Program{ static void DownloadFile() { //通过CurrentThread.ManagedThreadId获取当前的线程ID Console.WriteLine("开始下载:"+Thread.CurrentThread.ManagedThreadId);...
2018-06-07 22:51:08 223
原创 C#中检测委托线程的结束
已知可以通过写一个while的死循环来检测线程是否结束(不要用) 第二种方式为:等待句柄class Program{ static int Test(int , string str){ Console.WriteLine("test"+i+str); Thread.Sleep(100);//让当前线程休眠(即模拟下载过程),单位是ms ...
2018-06-06 23:37:48 1961
原创 C#中线程的开启方式1-异步委托
通过委托开启线程BeginInvokeclass Program{ static void Test(int , string str){ Console.WriteLine("test"+i+str); } static void Main(){ //通过委托来开启线程 Action<int,stri...
2018-06-06 17:31:22 580 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人