摘要:
由于EF第一次加载比较慢,所以要对EF进行一次初始化的加载,类似第一次打开网页很慢,但第二次打开都很快了的原理一样;第一次把所有静态的图片和JS缓存到本地了;当第二次打开的时候都不需要再去下载这些东西;因为EF第一次需要生成实体类和数据库的对应关系并做缓存;所以第一次加载的时候很慢;博客园里面有很多... 阅读全文
随笔档案-2015年09月
多线程实战(三)线程池
2015-09-05 16:18 by xchit, 446 阅读, 收藏,
摘要:
创建线程是昂贵的操作,所有为每个短暂的异步操作创建线程会产生显著的开销。为了解决这种短暂的任务,我们把它交给线程池(pooling);线程池可以成功地适应任何需要大量短暂开销资源情况。我们事先分配一定的资源,将这些资源放入到资源池。每次需要新的资源,只需要从池中获取一个,而不是创建一个新的。当资源不... 阅读全文
多线程实战(二)线程同步
2015-09-04 16:31 by xchit, 327 阅读, 收藏,
摘要:
当多个线程使用共享对象的时候,依次等待,这种我们通常叫着线程同步;下面介绍几种线程同步的方法:原子操作MutexSemaphoreSlimAutoResetEventManuualResetEventSlimCountDownEventBarrierReaderWriterLockSlim原子操作所... 阅读全文
C#并行编程 (Barrier,CountdownEvent,ManualResetEventSlim,SemaphoreSlim,SpinLock,SpinWait )
2015-09-04 16:22 by xchit, 2173 阅读, 收藏,
摘要:
背景有时候必须访问变量、实例、方法、属性或者结构体,而这些并没有准备好用于并发访问,或者有时候需要执行部分代码,而这些代码必须单独运行,这是不得不通过将任务分解的方式让它们独立运行。当任务和线程要访问共享的数据和资源的时候,您必须添加显示的同步,或者使用原子操作或锁。之前的.NET Framewor... 阅读全文
多线程实战(一) 线程基础
2015-09-01 23:30 by xchit, 428 阅读, 收藏,
摘要:
线程的好处,我想都不必多说,博客园太多了;但个人对线程了解还比较基础,决定把学习线程记录下来(有一些例子来之博客园):创建线程暂停线程等待线程线程传参数lockMonitor创建线程Thread t = new Thread(PrintNumbers);//线程创建t.Start();//开始线程P... 阅读全文
浙公网安备 33010602011771号