并发编程(02)---- 认识*锁和基本信息

1、活跃性问题

      死锁

      饥饿

      活锁

2、时间片:

       多线程的时候,cpu会给每个线程一个时间片,但是时间片很短,可能线程还没执行完时间就过期了,的让出cpu给其他线程使用,为了保持这个线程下次还没继续完成任务,还的保存线程的运行数据,也是很消耗性能的

3、饥饿与公平

    高优化级的吞噬所有低优先级的CPU时间片

    线程被永久堵塞在一个等待进入同步块的状态

    等待的线程永远不被唤醒

    如何避免饥饿问题

         t1.setPriority(10); 设置线程优先级,win最小为1,大为10

        设置合理的优先级

         使用锁来代替synchronize

           当几个线程同时对一个变量进行操作时,A线程执行了加,但是还没有赋值,时间片被B线程抢了过去,又对这个变量进行加,结果A线程和B线程的计算得到的值是一样的

4、线程安全性问题

     多线程环境下

     多个线程共享一个资源

     对资源进行非原子性操作

5、Synchronize的原理和使用

    内置锁

     互斥锁

 

修饰普通方法

修饰静态方法

 

6、任何对象都可以作为锁,那么锁信息又存在什么地方呢?

      (1)存在对象头中

      (2)对象头中的信息

           Mark Word (锁关注的地方)

            Class Metadata Address

            Array Length

7、偏向锁(获取锁资源不释放,当别的线程来尝试访问的时候才会释放锁)

      每次获取锁和释放锁会浪费资源

      很多情况下,竞争锁不是由多个线程,而是由一个线程在使用

       只有一个线程在访问同步代码块的场景

       在偏向锁状态时

             线程ID

             Epoch

             对象的分代年龄信息

             是否是偏向锁

             锁标志位

8、轻量级锁

     自旋

     多线程可以同时

 

重量级锁

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值