12 2020 档案
摘要:alter table tb_course add selected int(3) not null default 0 check ( selected between 0 and total_people ) comment '课程已选人数'; 报错:Column check constrain
阅读全文
摘要:同:执行这两个方法都会使得当前线程进入阻塞状态 异:1、如果两个方法都使用在同步代码块或者同步方法中,sleep()不会释放锁,而wait()会释放锁 2、sleep()可以在任何场景下调用,而wait()只能在同步代码块或者同步方法中被调用 3、sleep()是在Thread类中声明的,而wait
阅读全文
摘要:wait():执行此方法,当前线程就会进入阻塞状态,并释放同步监视器(也可以理解成所持有的锁) notify():执行此方法,会唤醒wait的一个线程,如果有多个线程被wait,就会唤醒优先级高的,如果优先级一致就随机唤醒一个 notifyAll():执行该方法,就会唤醒所有被wait的线程 注意:
阅读全文
摘要:同步代码块 synchronized(同步监视器){ //需要被同步的代码 } 1、需要同步的代码一般为操作共享数据的代码 2、共享数据:多个线程共同操作的变量 3、同步监视器,俗称:锁。任何一个类的对象,都可以充当锁。 要求:多个线程必须共用同一把锁 在实现runnable接口创建多线程的方式中,
阅读全文
摘要:程序:是为了完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。 进程:是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:一个进程有他自己的生命周期(产生、存在和消亡的过程) ——>程序是静态的,进程是动态的 ——>进程作为资源分配的单位,系统在运行时会为每一个
阅读全文