1. java是不是同步方法会自动加this锁,静态同步代码(名字可能不对)会自动加“名.class”锁
//看注释!
classTestLock
{
//非静态方法,默认锁是this
synchronizedvoidshow1()
{
}
//非静态方法,如果方法没有锁,里面同步代码块!
voidshow2()
{
//这里可以填写this,填什么都可以,只要是唯一,对象,类,都可以!
synchronized(this)
{
//这个同步代码块,如果不和上面方法进行同锁,填什么都可以,包括class文件都可以
//但是为了和上面方法同步的话,就必须this了,因为方法的锁此刻默认就是this!
}
} //静态方法看这里!
staticsynchronizedvoidmethod1()
{
//注意这个同步方法的锁,这会默认就不在是this了,而是(TestLock.class)了;
}
//静态同步代码块!
staticvoidmethod2()
{
synchronized(TestLock.class)
{
//这里建议这么写,该方法所属的class文件,当然,写其他类的字节码文件也是可以的!
//但是这里绝对不可以this
//如果和该上买呢静态方法同步的话,必须TestLock.class
}
}
}
2. Java多线程访问文件往文件里写东西时加上一个锁,
synchronized (变量){
语句
}
synchronized 方法(){
}
3. JAVA编程同步,加锁如何实现,有何优缺点
同步锁“synchronize”,手动锁Lock
synchronize:自动锁住,自动开锁。(自动都是建立在一定的条件上的)
Lock:手动,手动锁住,手动开锁
具体如何实现,这里不好说,一时说不清,自行搜索。
4. 如何用java实现文件操作的锁定及解锁
synchronized关键字可以实现加锁和解锁
5. Java中如果几个进程同时写一个文件,加锁后,其他进程会放弃,还是等着
如果你确定你写的是进程而不是线程的话,放弃还是等着就取决于代码了。如果操作加锁文件会抛出io异常,如果捕捉到异常catch块里放弃那就放弃了,如果捕捉到异常后在catch块里一直重新尝试再次操作就是等着了
6. java中如何锁住一个文件不让其他程序修改
File f = new File(fileName);
RandomAccessFile raf = new RandomAccessFile(f, "rw");
FileChannel fc = raf.getChannel();
FileLock fl = fc.tryLock();
if (fl.isValid()) {
Thread.sleep(30000); //do something here, 这时用notepad打开无法修改.
fl.release();
}
raf.close();
7. 如何给文件夹上锁
电脑里经常会存储着重要文件,这些文件需要进行加密,有许多方法来实现。但如果想对一个文件夹里的所有文件都进行加密,数量少还可以,要是数量多岂不是得把人累死? 因此,今天我要告诉您一个好方法:给Windows 9x/2000文件夹加密。通过给一个文件夹加密就可使该文件夹里的所有文件得到保护。其工作效果,就是在您双击进入该文件夹时系统提示您输入密码,正确则进入,错误则自动退回到硬盘根目录下——非常好用! 1、进入您要进行加密保护的文件夹中,在空白处单击鼠标右键,选择“自定义文件夹…”选项; 2、单击“下一步”选择“自定义”并在副选框中选择“选择或编辑该文件夹的Html模板”,单击“下一步”; 3、在选择模板类型中选择“标准”,并将“编辑该模板”选项选中,单击“下一步”; [下一页] 4、在弹出的“Folder”文件中找到〈script language="java-script"〉,在其下方顶头输入以下内容: var pass = prompt("请输入密码") 该处的“请输入密码”为系统提示语 if(pass != "123") “123”处换成您自己设定的密码 {window.location="c:"} 5、保存“Folder”文件之后,选择完成,文件夹加密就完成了,您可以进行测试啦! 因为刚才的诸多步骤就是Windows的脚本编程,所以经验证,该方法适用于所有Windows系统。如果需要去掉保护,只需要把“Folder”文件修改回原样就好啦! 由于Windows版本不同,细微之处会有所区别,如在Windows Me中,“Folder”文件中就没有〈script language="java-script"〉字段,而只有〈script〉,放到它后面也同样起作用。文件夹向导也不尽相同,请大家举一反三。 或者在网上可以 到很多的加密程序的
8. java上文件锁之后能不能对该文件进行读写
我来告诉你吧,你的文件如果是共享文件的话,改变啦文件的只读属性,其他进程是不能读的,但如果你是本地就不一定阿里