1. 线程和进程的区别
①进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.
线程是进程的一个实体,是CPU调度和分派的基本单位.
通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统内多个程序间并发执行的程度。
②进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。
③线程执行开销小,但不利于资源的管理和保护;而进程正相反。
2. Split函数 :它是指返回一个下标从零开始的一维数组,split函数包含指定数目的子字符串。
String str="1234@abc";
String[] a = str.split("@");
System.out.println("处理结果: "+a[0]+","+a[1]); //输出的是: 处理结果: 1234,abc
replace替换:
replace(要替换的目标,替换后新值);
如:
var obj="weclome to my blog!";
var newobj=obj.replace("my","our");
alert(newobj);
输出的值为:weclome to our blog!
substring切割:
String str = "hello word!";
System.out.println(str.substring(1));
System.out.println(str.substring(3));
System.out.println(str.substring(6));
将得到结果为:
ello word!
lo word!
ord!