码迷,mamicode.com
首页 > 其他好文 > 详细

Context缓存问题

时间:2018-03-06 00:58:40      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:span   实体   框架   using   microsoft   内存   can   call   school   

entityFramework是一种ORM框架

  • 缓存的内容
  1. 带有主键的实体

 

  • manage context lifetime(生效与失效时间)
  1. dispose too fast
    1. 缺点:can‘t enjoy the all the features it holds(changing tracking)
  2. 1 using (var context = new SchoolEntities())
    2 {
    3     context.AddToDepartments(department);
    4     context.SaveChanges();
    5 }

    lifetime too long

    1. 缺点:导致内存泄露
  3. rule,对于web application,一个request创建一个context,
  4. when to create context
  5. How to dispose
    1. using——implict Dispose
    2. dispose

 

 

 

         

 

 

 

  • 缓存的目的:提高系统性能
  • .重载dispose()方法的作用

 

  • 多线程之间内存共享,那多个用户同时操作时是否会出现脏读及误读

 

  • 并发操作
  • 异步操作
  1. 目的:不会缩短单个线程的时间,只会提高系统整体性能
  2. 解释:当一个request请求data时,释放当前线程,做其他操作,等返回数据时重新调用另一个线程

[参考文献]

http://blogs.microsoft.co.il/gilf/2010/02/07/entity-framework-context-lifetime-best-practices/

https://blog.jongallant.com/2012/10/do-i-have-to-call-dispose-on-dbcontext/

Context缓存问题

标签:span   实体   框架   using   microsoft   内存   can   call   school   

原文地址:https://www.cnblogs.com/caohuan95568/p/8511969.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!