继上一篇文章TransactionScrope 在做相应的变动时,发现可以重现ORA-14450错误,如:

   List<Thread> ls = new List<Thread>();
  for (int i = 0; i < 100; i++)
{
ls.Add(new Thread(new ParameterizedThreadStart(new Class1().Func1)));
}
///inner
for (int i = 0; i < ls.Count; i++)
{
ls[i].Start(i);
}
while (ls.Exists(o => o.ThreadState == ThreadState.Running))
{
Thread.Sleep(100);
}
Console.WriteLine("All Over...");
Console.ReadKey();

  

注:class1 为上篇文章的类,Func1 为上篇文章的方法名;

在执行过程中报错:

当前未解决使用TransactionScrope 并发时 导致ORA-14450错误,仅采用DBTransaction 跳过此问题,以期后续能解决此问题。

也请各位能给个好点的建议^.^

经测试发现使用的是已过时的类库构造的oraclecommand  (System.Data.OracleClient) 如果使用(Oracle.DataAccess) 则不会出现此问题。

TransactionScrope 2的更多相关文章

  1. TransactionScrope

    测这个东西其实是由生产环境数据库报错,ORA-14450错误. 测试结果是: 1)使用transactionscrope时,数据库连接打开需在scrope内打开: 2)TransactionScope ...

随机推荐

  1. unison实时双向数据同步

    软件下载 ocamlopt下载地址:http://caml.inria.fr Unison下载地址:http://www.seas.upenn.edu/~bcpierce/unison 1.安装uni ...

  2. .net 将xml转换成DateSet

    /// <summary> /// 将XML字符串转换成DATASET /// </summary> /// <param name="xmlStr" ...

  3. UILabel 的使用,属性详解

    ·UILable是iPhone界面最基本的控件,主要用来显示文本信息. ·常用属性和方法有: .创建 CGRect rect = CGRectMake(, , , ); UILabel *label ...

  4. Xcode快捷键 ---- 提高效率

    Mac中主要有四个修饰键,分别是Command,Control,Option和Shift.     1. ⌘ + L 搜索行数,输入行数,调到指定行数   2.⌘ + shift + O 查询flie ...

  5. C# winForm启动最小化到任务栏右侧通知栏并交互操作

    原文链接:http://blog.sina.com.cn/s/blog_45eaa01a01013u36.html C# winForm启动最小化到任务栏右侧通知栏并交互操作 一.主要功能:(1).程 ...

  6. SQL 经典练习

    SQL 基础练习 CREATE TABLE STUDENT(SNO VARCHAR(3) NOT NULL, SNAME VARCHAR(4) NOT NULL,SSEX VARCHAR(2) NOT ...

  7. Python提取图片的ROI

    图像处理经常需要提取图片的ROI,本文使用Python提取图片的ROI. 使用的Module是PIL (Pillow),一个图像处理库,用到的函数为类 Image 中的 crop 方法. 函数原型为: ...

  8. MYSQL常用简单语句

    使用SQL语法大写,增加可读性(小写部分就是自己数据库写的表/字段喽,具体你懂得...). 创建数据库:CREATE DATABASE mysql_db;删除数据库:DROP DATABASE mys ...

  9. mysql索引之组合索引

    多列索引又称组合索引,在mysql的查询操作中,我们经常会遇到多个搜索条件,如:$sql = "select * from article where content='ma4' and t ...

  10. js中几个容易混淆的概念

    1. var name = "The Window";var object = {name : "My Object",getName: function(){ ...