转自
http://topic.csdn.net/t/20060129/22/4537202.html
1 同一时间只能有一个线程访问它,那如果我是分别来自两个不同的实例对象可不可以同时访问?
不可以,如果两个不同的实例对象同时访问一个数据库中的同一个对象,如表的时候,就可能会
出现一个对象正在读数据的同时另一个对象在写数据.所以对于多线程的程序,一定要注意同
步.特别是对于关键敏感的数据的访问.但同步的代价就是程序的执行效率降低,如果不是敏感
的数据可以不用同步
2 如何将同步应用到数据库的回滚和数据的完整性上?
措施1:用synchroized,这个关键字用于同步,可以把它加在方法的头部,也可以把它加在方法
的语句块中。
措施2:在操作数据库的过程中,把对敏感数据的操作放在try-catch-finall语句块中
措施3:在对数据库进行实际操作之前,调用这个方法:setAutoCommit(false);这个方法的作
用是关闭数据库的自动提交功能,而必须等待显式的执行commit操作
措施4:在所有必需的数据库操作后执行commit方法,将前面所有的操作作为一个整体的事务
一次性提交
措施5:在catch中添加如下语句:
connection.rollback();
connection.setAutoCommit(true);
第一个语句的作用是如果在前面数据库的操作中如果发生异常,则回滚所有的操作
第二个语句的作用是设置数据库的自动提交属性为真,这样后面fianlly中关闭数据库
连接,结果集的操作才会自动提交
3 能说说主程序\主线程\用户线程和DAEMON线程的关系?
程序和进程的区别:程序是静止的,进程是动态的。
进程和线程的区别:进程是资源分配的基本单位,线程是执行的基本单位,同一进程中的所有线程共享该进程的所有资源,彼此之间可以互相通讯。就好像同一家人住在同一个屋子里一样,屋子就是资源。而家里面有很多人,这些人共享这间屋子一样,彼此之间还可以互相交流
主线程和用户现场的区别:每当一个main函数被执行,就会启动一个主线程,这个线程是由系统启动的,用户线程是由用户启动的,比如你点击了一个按钮
分享到:
相关推荐
本篇文章将深入探讨“静态方法同步”与“非静态方法同步”的差异、应用场景以及它们如何影响程序的并发性能。 首先,我们来了解什么是同步。在Java中,同步是通过`synchronized`关键字实现的,它用于确保同一时间...
线程同步是多线程编程中的一个重要概念,用于解决多个线程并发访问共享资源时可能出现的数据不一致性问题。在Java中,线程同步主要通过关键字`...理解并合理运用这些同步机制是编写安全、高效的多线程Java程序的关键。
在编程领域,同步和异步方法是处理任务执行方式的两种基本模式,它们在系统设计和性能优化中扮演着至关重要的角色。理解这两者的区别及其优缺点对于开发高效的应用至关重要。 **同步方法**指的是调用一个函数或方法...
Oracle 12.2 主从数据同步方法 Oracle 12.2 主从数据同步方法可以实现容器数据库的数据同步,目前只支持 DML 的...通过对 Oracle 12.2 主从数据同步方法的实现步骤的介绍,希望能够帮助读者更好地理解和实现数据同步。
通过理解和实践这三种帧同步算法,我们可以深入理解帧同步的原理,并能够针对具体通信系统的需求进行定制化设计。在学习和使用这些MATLAB代码时,一定要注意理解每个函数的作用,以及如何根据实际系统参数调整代码,...
【Java 同步方法】是Java编程中...总之,理解和优化Java同步方法的使用,是提高多线程应用程序性能和可伸缩性的核心。通过精细调整同步策略,可以有效地减少争用,提升并发性能,从而让程序在高负载环境下表现更佳。
本文将深入探讨Java中的多线程同步方法,并通过实例来阐述其工作原理。 首先,我们要理解线程同步的基本概念。在多线程环境中,当多个线程试图访问同一资源时,如果没有适当的同步控制,可能会导致不可预测的结果。...
以下将详细讨论这些同步器的工作原理、设计方法以及它们在Verilog中的实现。 首先,电平同步器(Level Synchronizer)是最基本的跨时钟域解决方案。它通常由两个D触发器组成,每个触发器工作在不同的时钟域。信号...
对于本科毕设来说,理解这些同步方法的基本原理并实现MATLAB代码是一个很好的实践项目,有助于深化对通信系统中帧同步概念的理解。同时,通过比较不同算法的性能,可以提高对通信系统优化的认识。 以上就是关于三种...
线程同步是多线程编程中的重要概念,用于协调多个并发执行的线程,确保它们在访问...在VC6.0的工程示例中,每个小工程都针对上述一种同步方法进行详细演示,通过阅读代码和注释,可以帮助你更好地理解和应用这些技术。
《Garden方法提取位同步程序》 位同步是通信领域中的一个重要概念,它是指在数字通信系统中,接收端能够准确地识别出发送端数据的起始位置,从而正确解码的过程。Garden方法,也被称为Gardner算法,是一种经典的位...
本文将深入探讨几种异步时钟域同步化处理的方法,以确保系统稳定性和可靠性。 首先,我们来理解一下什么是异步时钟域。在FPGA设计中,不同的模块或功能块可能由不同的时钟源驱动,这些时钟源的频率可能相同也可能...
本实验报告旨在通过实际操作来深入理解和掌握进程同步的基本原理和方法。 首先,我们要理解进程同步的基本准则。在多进程环境下,当两个或更多进程需要以特定顺序执行某些操作时,就需要进行同步。这些操作可能涉及...
首先,理解“同步节点”是非常关键的。在分布式系统中,同步节点是指负责协调和同步不同节点间数据的组件。在游戏环境中,这些节点可能是游戏服务器、数据库服务器或者缓存服务器。如果同步节点出现问题,可能导致...
本文将深入探讨.NET框架中实现线程同步的多种方法。 首先,我们来看自由锁(InterLocked)。自由锁主要通过Interlocked类提供的静态方法来实现线程安全的整型数值操作,如Increment和Decrement。这些操作在多线程环境...
实验的目标是让学生掌握进程同步与互斥的基本原理和解决方法,了解Windows 2000/XP中的多线程并发执行机制,以及学习使用操作系统提供的API函数进行同步操作。实验使用Java编程语言,在Windows XP环境下进行。 生产...
Java 线程同步机制中 synchronized 关键字的理解 Java 的线程同步机制是为了解决多个线程共享同一片存储空间所带来的访问冲突问题。其中,synchronized 关键字是 Java 语言中解决这种冲突的重要机制。 ...
在数字系统设计中,时钟...综上所述,理解和掌握异步到同步时钟域的转换技术对于任何从事数字系统设计的专业人士来说都是至关重要的。通过深入学习和实践,我们可以更好地应对这一领域的挑战,提高系统的性能和稳定性。