技术标签: java中非法字符uff09
class Res{
private String name;
private String sex;
private boolean flag = false;
public synchronized void set(String name,String sex){
if(flag){
try{this.wait();}catch(Exception e){}
}
this.name = name;
this.sex = sex;
flag = true;
this.notify();
}
public synchronized void out(){
if(!flag){
try{this.wait();}catch(Exception e){}
}
System.out.println(name+"--"+sex);
flag = false;
this.notify();
}
}
class Input implements Runnable{
private Res r;
Input(Res r){
this.r = r;
}
public void run(){
int x = 0;
while(true){
if(x==0){
r.set("mike","man");
}
else{
r.set("哈哈","女");
}
x = (x+1)%2;
}
}
}
class Output implements Runnable{
private Res r;
Output(Res r){
this.r = r;
}
public void run(){
while(true){
r.out();
}
}
}
class InputOutput{
public static void main(String[] args){
Res r = new Res();
new Thread(new Input(r)).start();
new Thread(new Output(r)).start();
/*Input in = new Input(r);
Output out = new Output(r);
Thread t1 = new Thread(in);
Thread t2 = new Thread(out);
t1.start();
t2.start();*/
}
}
/*
wait();notify();notifyAll();
都使用在同步中,因为要对持有监视器(锁)的线程中操作。
所以要使用在同步中,因为只有同步才具有锁。
为什么这些操作线程的方法要定义在Object类中呢?
因为这些方法在操作同步的线程时,都必须要标识它们所操作
线程持有的锁。只有同一个锁上的被等待线程,可以被同一个锁上的
notify唤醒。不可以对不同锁中的线程进行唤醒。
也就是说,等待和唤醒必须是同一个锁。
而锁可以是任意对象,所以可以被任意对象调用的方法定义在Object
类中。
*/
——————————————————————
原因:
哈哈和女之间的分号为中文的逗号。
文章浏览阅读1.2w次。前言关于 QPS、TPS、PV、UV、GMV、IP、RPS 这些词语,看起来好像挺专业。但实际上,我认为是这是每个程序员必懂的知识点了,你可以搞不懂它们怎么计算的,但是你最少要了解它们分别代表什么意思。QPSQueries Per Second,每秒查询数。每秒能够响应的查询次数。QPS 是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的..._qpsvr
文章浏览阅读2.3k次。在DOS下SQL> startup;ORA-00119: invalid specification for system parameter LOCAL_LISTENERORA-00132: syntax error or unresolved network name 'LISTENER_ORCL'解决方法:1.SQL> create pfile from spf..._ora-00132
文章浏览阅读650次。今天给大家分享学习两个函数:quick_exit函数和ctime函数。quick_exitquick_exit()函数是在定义STDLIB头文件。quick_exit()函数用于正常终止进程而不完全清除资源。如果val为零或EXIT_SUCCESS,则表明程序成功终止。如果该值不为零或EXIT_FAILURE,则表明该程序未成功终止。这些函数以那里调用的相反顺序被调用。句法:void quick_exit(int val);参数:此方法采用单个参数val,它是表示程序退出状态_quick_exit
文章浏览阅读60次。 一转眼接触ORACLE已经一年了,在这一年中收获多多,感慨多多,我记得是2004年11月底开始学习ORACLE的,当时选择方向也是几经波折,还好现在的处境不是非常的艰难,前途似乎还有想象中的光明。 毕业已经两年半,开始半年主要是接触Sybase,当时公司后台使用的Sybase SQL 11,由于人手比较少,管理也不很严格,所以我经常有机会光顾他,在那里我学会了怎样备份,恢复数..._李小龙语录一拳就是一拳一脚就是一脚
文章浏览阅读1.9k次。dialog如果没有设置style,那么系统会主动设置一个style,这个style中的decorview会存在padding,所以导致match_parent无效1.方法一dialog.show();//在show之后修改,必须这样否则无效,没看源码具体原因不知道Window window =dialog.getWindow();if (window == null) {..._android dialog 布局 match_parent 无效
文章浏览阅读256次,点赞10次,收藏2次。使用app在真机上安装完成后,进入首页后登录时遇到了连不上后端api的问题,在处理完跨域的问题后,发现因为发布app时 vue开发模式下配置的跨域是无效的,打包后会找不到接口。使用HBuildeX创建5+app项目,然后删除。并将vue3打包出来的dist文件夹中的。全部内容复制到5+app项目中;_vite vue ts 转 app
文章浏览阅读2.3k次。官网http://cassandra.apache.org/ 下载后wget http://mirror.bit.edu.cn/apache/cassandra/3.11.1/apache-cassandra-3.11.1-bin.tar.gz解压tar -xvf apache-cassandra-3.11.1-bin.tar.gzcd apache-cassandra-3.11.1修改配置文件_cassandra入门实战黑马程序员
文章浏览阅读1.7k次。ES源码之路(一):源码本地编译启动先来一段客套话,介绍一下ES:ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。ElasticSearch用于云计算中,能够达到实时搜索,稳定,可..._gradle编译es源码
文章浏览阅读256次。React脚手架生成代码和Demo_脚手架demo是什么
文章浏览阅读3.2k次。动漫人物怎么画?人体动作怎么画?有多少绘画新手都是喜欢收藏大量人体图文或是人体视频教程,但是从来都从来都没有认真的练习过的,收藏夹可不会让你画技提升,究其原因还是因为干货缺少了理论上的指导,导致众多小可爱知其然不知其所以然。为此今天就分享了一套人体动态练习图,搭配讲解食用你还怕学不会吗?顺便推荐大家可以搜一下:灵猫课堂,或者打开手机微信,添加好友框内搜索:灵猫课堂,一键关注,学习无忧!上面..._人体体块怎么画
文章浏览阅读513次。1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度字符串 strlen(p) 取字符串长度 strcmp(p, p1) 比较字符串 strcasecmp忽略大小写比较字符串strncmp(p, p1, n) 比较指定长_复制指定长度字符串
文章浏览阅读1.4w次。宝塔想必大家一定很熟悉了,用过服务器的都知道。那今天给大家介绍下宝塔的防火墙。宝塔面板网站防火墙是基于nginx/apache模块开发的一套应用层防火墙,能有效阻止大部分渗透攻击,且提供高度自由的规则自定义功能,为站点加一道铜墙铁壁。主要目的是从源头阻止站点被挂马的事情发生。目前宝塔官网和官方论坛一直都在使用宝塔网站防火墙,效果良好。宝塔面板防火墙是一个防火墙程序,用于在宝塔面板中防御服务器外来攻击使用的。根据环境服务软件的不同,分为nginx防火墙和apache防火墙。宝塔面板防火墙其实管理的是操_宝塔系统防火墙是什么防护