RMB求解:如何用编程的方式实现事务处理?换句话说就是自己开发数据库事务处理 1 如何用编程的方式实现ACID事务处理,比如说向两个不同的文件写入一行文本信息,保证全部写入或者一个都不写。要考虑最坏的情况,比如说写入第一个文本完成后死机或断电、IO异常等2 在上一个情况中,只考虑了单任务的情况,如果并发多任务执行,在不用单例排队的情况下,交叉执行任务如何保证事务的一致性哪?希望能够解答的人加我qq8518231 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个,细里追究,就比较复杂了。给你一个伪码逻辑:if (acquireWriteLock(f1) && acquireWriteLock(f2)){ if (! writeLine(f1)) { ... } if (! writeLine(f2)) { 1. recover the writing of f1. ... }}else{ ///}这里头的写错是排它锁。不允许其它进程读取该文件,以防破坏。最好找一本进程间通讯的资料看看读写锁的实现。难度倒不是特别大。但要处理的细节还挺多的。比如文件1写入成功,但文件2写入失败,但是你恢复1的时候,又恢复失败,怎么办? 看看这个:http://www.h2database.com/html/main.html oracle NO_DATA_FOUND EXCEPTION 请问如何遍历rowtype或游标中的各个列? 问一个关于imp exp的问题 求教sql写法 统计细分 oracle9i 的安装 oracle提示找不到表 刚学sql,照书上的例子建立个触发器,就报错。 救助:在ORACLE中如何用SQL语句实现SQLserver2000中的TOP的功能. 请问:oracle 8i如何安装 求助某字段部分文言整体删除的sql如何写 oracle查询,非常的郁闷 求助各位大侠,关于redo文件的恢复
给你一个伪码逻辑:
if (acquireWriteLock(f1) && acquireWriteLock(f2))
{
if (! writeLine(f1))
{
...
}
if (! writeLine(f2))
{
1. recover the writing of f1.
...
}
}
else
{
///
}
这里头的写错是排它锁。不允许其它进程读取该文件,以防破坏。最好找一本进程间通讯的资料看看读写锁的实现。难度倒不是特别大。但要处理的细节还挺多的。比如文件1写入成功,但文件2写入失败,但是你恢复1的时候,又恢复失败,怎么办?