我正在显示模态视图
[self presentModalViewController:controller animated:YES];
Run Code Online (Sandbox Code Playgroud)
当视图向上移动屏幕时,它根据创建的xib文件中的设置是透明的,但是一旦它填满屏幕就会变得不透明.
有没有保持视图透明?
我怀疑它被放置的视图没有被渲染,而是模态视图变得不透明.
是否可以直接用.Net读取磁盘?直接我的意思是通过绕过文件系统的设备.我想我会通过某种方式打开设备来解决这个问题,例如"\ Device\Ide\IdeDeviceP2T0L0-1".
如果我无法使用.NET api打开设备,知道使用哪个Win32 API会有所帮助.
我正在尝试诊断此异常:
System.Runtime.InteropServices.COMException (0x80070008): Not enough storage is available to process this command. (Exception from HRESULT: 0x80070008)
at System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(RuntimeType objectType)
at System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(Type objectType)
at System.Runtime.Remoting.Activation.ActivationServices.CreateInstance(Type serverType)
at System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Type serverType, Object[] props, Boolean bNewObj)
at Oracle.DataAccess.Client.CThreadPool..ctor()
at Oracle.DataAccess.Client.OracleCommand.set_CommandTimeout(Int32 value)
...
Run Code Online (Sandbox Code Playgroud)
看起来任何正常类型的"存储"都没有达到任何限制.该应用程序使用大约400MB的内存,70个线程,2000个句柄,硬盘驱动器有许多GB免费.该机器运行Windows 2003 Enterprise Server 32位,内存为16GB,因此内存不应成为问题.
应用程序作为Windows服务运行,因此没有使用GDI对象.耗尽GDI句柄是此异常的常见原因.
数据库连接,命令和阅读器都使用块包装,因此应该正确清理它们.
更新:将我们使用的线程数从12减少到4似乎解决了这个问题.在我们持续4到8小时之前,我们设法在没有错误的情况下运行超过24小时. UPDATE2:我从未弄清楚我们用尽了什么资源,但减少线程数似乎已经解决了问题.或至少隐藏它.
我试图找出为什么我的应用程序中的某些对象被固定.到目前为止我看过的对象是对象数组!gcroot显示数组被固定但我不知道如何弄清楚为什么它被固定.
输出:
0:000> !dumpobj 0239cea0
Name: System.Object[]
MethodTable: 793041d0
EEClass: 790eda54
Size: 528(0x210) bytes
Array: Rank 1, Number of elements 128, Type CLASS
Element Type: System.Object
Fields:
None
0:000> !gcroot 0239cea0
Note: Roots found on stacks may be false positives. Run "!help gcroot" for
more info.
Scan Thread 0 OSTHread f3c
Scan Thread 2 OSTHread e54
Scan Thread 4 OSTHread 748
Scan Thread 5 OSTHread fe0
Scan Thread 7 OSTHread 7a0
Scan Thread 9 OSTHread cf4
Scan Thread 10 OSTHread …Run Code Online (Sandbox Code Playgroud)