原帖
http://bbs.chinaunix.net/viewthread.php?tid=865766&extra=page%3D4環境說明:
OS : Debian Linux testing
Oracle :Oracle 10.2.0.1.0
dmalloc :5.4.2-5 疑問一.
以下代碼OCIEnvCreate, OCIHandleFree是否使用正確 ?
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <dmalloc.h>
#include "oci.h"int main(int argc, char *argv[])
{
OCIEnv *envhp;
if (OCIEnvCreate ( &envhp, (ub4)OCI_DEFAULT, (dvoid *)0,
(dvoid * (*)(dvoid *, size_t)) 0,
(dvoid * (*)(dvoid *, dvoid *, size_t)) 0,
(void (*)(dvoid *, dvoid *)) 0,
(size_t) 0,
(dvoid **) 0)) {
printf("couldn't create environment");
} OCIHandleFree ((dvoid *)envhp, OCI_HTYPE_ENV); exit(0) ;
}
疑問二:
編譯:
$gcc -I /app/oracle/product/10.2.0.1/rdbms/public/ -L /app/oracle/product/10.2.0.1/lib/ -o aa aa.c -ldmalloc -lclntsh$dmalloc -l aa.log all
$DMALLOC_OPTIONS=debug=0xcf66d2b,log=aa.log
$export DMALLOC_OPTIONS
執行後得到aa.log檔. 發現很多沒有釋放的指針 (附檔aa.log.gz)
請幫忙分析一下1165293967: 312: top 10 allocations:
1165293967: 312: total-size count in-use-size count source
1165293967: 312: 408211 3 384987 1 ra=0xb7682d8c
1165293967: 312: 145150 18 145150 18 ra=0xb7c0b866
1165293967: 312: 129404 5 129404 5 ra=0xb7b9e11d
1165293967: 312: 5200 5 5200 5 ra=0xb7bf4ee2
1165293967: 312: 4092 31 3564 27 ra=0xb7bf169e
1165293967: 312: 3468 1 3468 1 ra=0xb7c735db
1165293967: 312: 2080 2 2080 2 ra=0xb7bf5a6e
1165293967: 312: 1408 4 0 0 ra=0xb705da1f
1165293967: 312: 1224 3 408 1 ra=0xb7c6b2ba
1165293967: 312: 706400 214 678731 117 Total of 50
1165293967: 312: Dumping Not-Freed Pointers Changed Since Start:
1165293967: 312: not freed: '0xb6c92008|s1' (103328 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cac808|s1' (860 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cacc08|s1' (792 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cb4008|s1' (2216 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cb5008|s1' (22208 bytes) from 'ra=0xb7b9e11d'
http://bbs.chinaunix.net/viewthread.php?tid=865766&extra=page%3D4環境說明:
OS : Debian Linux testing
Oracle :Oracle 10.2.0.1.0
dmalloc :5.4.2-5 疑問一.
以下代碼OCIEnvCreate, OCIHandleFree是否使用正確 ?
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <dmalloc.h>
#include "oci.h"int main(int argc, char *argv[])
{
OCIEnv *envhp;
if (OCIEnvCreate ( &envhp, (ub4)OCI_DEFAULT, (dvoid *)0,
(dvoid * (*)(dvoid *, size_t)) 0,
(dvoid * (*)(dvoid *, dvoid *, size_t)) 0,
(void (*)(dvoid *, dvoid *)) 0,
(size_t) 0,
(dvoid **) 0)) {
printf("couldn't create environment");
} OCIHandleFree ((dvoid *)envhp, OCI_HTYPE_ENV); exit(0) ;
}
疑問二:
編譯:
$gcc -I /app/oracle/product/10.2.0.1/rdbms/public/ -L /app/oracle/product/10.2.0.1/lib/ -o aa aa.c -ldmalloc -lclntsh$dmalloc -l aa.log all
$DMALLOC_OPTIONS=debug=0xcf66d2b,log=aa.log
$export DMALLOC_OPTIONS
執行後得到aa.log檔. 發現很多沒有釋放的指針 (附檔aa.log.gz)
請幫忙分析一下1165293967: 312: top 10 allocations:
1165293967: 312: total-size count in-use-size count source
1165293967: 312: 408211 3 384987 1 ra=0xb7682d8c
1165293967: 312: 145150 18 145150 18 ra=0xb7c0b866
1165293967: 312: 129404 5 129404 5 ra=0xb7b9e11d
1165293967: 312: 5200 5 5200 5 ra=0xb7bf4ee2
1165293967: 312: 4092 31 3564 27 ra=0xb7bf169e
1165293967: 312: 3468 1 3468 1 ra=0xb7c735db
1165293967: 312: 2080 2 2080 2 ra=0xb7bf5a6e
1165293967: 312: 1408 4 0 0 ra=0xb705da1f
1165293967: 312: 1224 3 408 1 ra=0xb7c6b2ba
1165293967: 312: 706400 214 678731 117 Total of 50
1165293967: 312: Dumping Not-Freed Pointers Changed Since Start:
1165293967: 312: not freed: '0xb6c92008|s1' (103328 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cac808|s1' (860 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cacc08|s1' (792 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cb4008|s1' (2216 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cb5008|s1' (22208 bytes) from 'ra=0xb7b9e11d'
解决方案 »
- 如何显示一周内的日期和周几,各位学兄,学姐帮帮忙
- 求一SQL语句
- 关于更新树结构的问题
- 使用PL/SQL Developer在导出某个表时,出现“流读取错误”,谁知道是什么导致的?
- PLSQL错误提示 :ORA-06534: 无法访问可连续重用的程序包 "PLSQL.COMMON_FUNCTION",高手指点一下。
- Oracle中的update是否不支持update?
- oracle 10g 该用PL/SQL Developer 的哪个版本?
- 请教一条sql语句
- 如何用sql语句查询一个用户,看看他具有哪些权限?
- 急急急!!!安装Oracle9i Client 问题?
- 触发器问题。没有数据?
- 各位大哥请问一下一个关于oracle划分时间间隔的问题
我的這段測試代碼是單線程的.不用OCI又用什麼呢?
程序又不是java寫的.郁悶