当前位置: 首页 > news >正文

申请完域名如何建设网站企业网站seo哪里好

申请完域名如何建设网站,企业网站seo哪里好,python做网站用什么框架,普通网站建设多少钱C#多线程编程 一、使用线程的理由 1、可以使用线程将代码同其他代码隔离#xff0c;提高应用程序的可靠性。 2、可以使用线程来简化编码。 3、可以使用线程来实现并发执行。 二、基本知识 1、进程与线程#xff1a;进程作为操作系统执行程序的基本单位#xff0c;拥有应用程…C#多线程编程 一、使用线程的理由 1、可以使用线程将代码同其他代码隔离提高应用程序的可靠性。 2、可以使用线程来简化编码。 3、可以使用线程来实现并发执行。 二、基本知识 1、进程与线程进程作为操作系统执行程序的基本单位拥有应用程序的资源进程包含线程进程的资源被线程共享线程不拥有资源。 2、前台线程和后台线程通过Thread类新建线程默认为前台线程。当所有前台线程关闭时所有的后台线程也会被直接终止不会抛出异常。 3、挂起Suspend和唤醒Resume由于线程的执行顺序和程序的执行情况不可预知所以使用挂起和唤醒容易发生死锁的情况在实际应用中应该尽量少用。 4、阻塞线程Join阻塞调用线程直到该线程终止。 5、终止线程Abort抛出 ThreadAbortException 异常让线程终止终止后的线程不可唤醒。Interrupt抛出 ThreadInterruptException 异常让线程终止通过捕获异常可以继续执行。 6、线程优先级AboveNormal BelowNormal Highest Lowest Normal默认为Normal。 三、线程的使用 线程函数通过委托传递可以不带参数也可以带参数只能有一个参数可以用一个类或结构体封装参数。 namespace Test {class Program{static void Main(string[] args){Thread t1 new Thread(new ThreadStart(TestMethod));Thread t2 new Thread(new ParameterizedThreadStart(TestMethod));t1.IsBackground true;t2.IsBackground true;t1.Start();t2.Start(hello);Console.ReadKey();}public static void TestMethod(){Console.WriteLine(不带参数的线程函数);}public static void TestMethod(object data){string datastr data as string;Console.WriteLine(带参数的线程函数参数为{0}, datastr);}} } 四、线程池 由于线程的创建和销毁需要耗费一定的开销过多的使用线程会造成内存资源的浪费出于对性能的考虑于是引入了线程池的概念。线程池维护一个请求队列线程池的代码从队列提取任务然后委派给线程池的一个线程执行线程执行完不会被立即销毁这样既可以在后台执行任务又可以减少线程创建和销毁所带来的开销。 线程池线程默认为后台线程IsBackground。 namespace Test {class Program{static void Main(string[] args){//将工作项加入到线程池队列中这里可以传递一个线程参数ThreadPool.QueueUserWorkItem(TestMethod, Hello);Console.ReadKey();}public static void TestMethod(object data){string datastr data as string;Console.WriteLine(datastr);}} } 五、Task类 使用ThreadPool的QueueUserWorkItem()方法发起一次异步的线程执行很简单但是该方法最大的问题是没有一个内建的机制让你知道操作什么时候完成有没有一个内建的机制在操作完成后获得一个返回值。为此可以使用System.Threading.Tasks中的Task类。 构造一个TaskTResult对象并为泛型TResult参数传递一个操作的返回类型。 namespace Test {class Program{static void Main(string[] args){TaskInt32 t new TaskInt32(n Sum((Int32)n), 1000);t.Start();t.Wait();Console.WriteLine(t.Result);Console.ReadKey();}private static Int32 Sum(Int32 n){Int32 sum 0;for (; n 0; --n)checked{ sum n;} //结果太大抛出异常return sum;}} } 一个任务完成时自动启动一个新任务。一个任务完成后它可以启动另一个任务下面重写了前面的代码不阻塞任何线程。 namespace Test {class Program{static void Main(string[] args){TaskInt32 t new TaskInt32(n Sum((Int32)n), 1000);t.Start();//t.Wait();Task cwt t.ContinueWith(task Console.WriteLine(The result is {0},t.Result));Console.ReadKey();}private static Int32 Sum(Int32 n){Int32 sum 0;for (; n 0; --n)checked{ sum n;} //结果溢出抛出异常return sum;}} } 六、委托异步执行 委托的异步调用BeginInvoke() 和 EndInvoke() namespace Test {public delegate string MyDelegate(object data);class Program{static void Main(string[] args){MyDelegate mydelegate new MyDelegate(TestMethod);IAsyncResult result mydelegate.BeginInvoke(Thread Param, TestCallback, Callback Param);//异步执行完成string resultstr mydelegate.EndInvoke(result);}//线程函数public static string TestMethod(object data){string datastr data as string;return datastr;}//异步回调函数public static void TestCallback(IAsyncResult data){Console.WriteLine(data.AsyncState);}} } 七、线程同步   1原子操作Interlocked所有方法都是执行一次原子读取或一次写入操作。   2lock()语句避免锁定public类型否则实例将超出代码控制的范围定义private对象来锁定。   3Monitor实现线程同步     通过Monitor.Enter() 和 Monitor.Exit()实现排它锁的获取和释放获取之后独占资源不允许其他线程访问。     还有一个TryEnter方法请求不到资源时不会阻塞等待可以设置超时时间获取不到直接返回false。   4ReaderWriterLock     当对资源操作读多写少的时候为了提高资源的利用率让读操作锁为共享锁多个线程可以并发读取资源而写操作为独占锁只允许一个线程操作。   5事件Event类实现同步     事件类有两种状态终止状态和非终止状态终止状态时调用WaitOne可以请求成功通过Set将时间状态设置为终止状态。     1AutoResetEvent自动重置事件     2ManualResetEvent手动重置事件   6信号量Semaphore       信号量是由内核对象维护的int变量为0时线程阻塞大于0时解除阻塞当一个信号量上的等待线程解除阻塞后信号量计数1。       线程通过WaitOne将信号量减1通过Release将信号量加1使用很简单。   7互斥体Mutex       独占资源用法与Semaphore相似。    8跨进程间的同步       通过设置同步对象的名称就可以实现系统级的同步不同应用程序通过同步对象的名称识别不同同步对象。     作者阿凡卢 出处http://www.cnblogs.com/luxiaoxun/ 转载于:https://www.cnblogs.com/mjq5150/p/6273274.html
http://www.zqtcl.cn/news/901494/

相关文章:

  • 自己建网站做app手机网站列表页源码
  • 企业网站模板seo网站建设关键词优化
  • 平面毕业设计作品网站推广普通话ppt
  • p2p网站开发思路方案免费建简单网站
  • 微信朋友圈的网站连接怎么做互联网工程有限公司
  • 高大上企业网站优秀的门户网站
  • 做seo对网站推广有什么作用自己做电商网站吗
  • 网站从哪些方面来做泉州网页搜索排名提升
  • 网站建设可以给公司带来想做网站开发兼职
  • 天津市免费建站精美大气的餐饮类企业网站
  • 购物网站那个信用好又便宜手机模板的网站
  • 建筑企业资质查询网站怎么查网络服务商
  • 汉川市城乡建设局网站企业销售网站建设
  • 梅州建设网站域名购买流程
  • 单页网站与传统网站的区别wordpress对接微信
  • 做公司网站深圳旅游
  • 最好企业网站网站建设 的销售图片
  • 怎么创建网站 免费滴做网站算运营吗
  • 廊坊网站建设-商昊网络正规网站优化推广
  • 网站建设拍金手指排名贰贰安装wordpress数据库错误
  • 食品网站建设需求分析购物app大全
  • 电商美工广州seo技术外包公司
  • 重庆旅游seo整站优化深圳宝安区是富人区吗
  • 网站开发验收模板网站欧美风格
  • 自己做发卡网站什么是网络设计制作
  • 如何搭建一个公司网站互联网推广怎么找客户
  • 江苏同隆建设集团有限公司网站asp.net新建网站
  • 爱站网挖掘工具小程序网站开发怎么样
  • 网站文章批量上传工具自己制作免费网站
  • 凡科快速建站建设网站遇到问题的解决方案