小编Lcn*_*cng的帖子

多进程读写一个文件

我有一个txt文件ABC.txt,它将由多个进程读取和写入.因此,当一个进程正在读取或写入文件ABC.txt时,必须锁定文件ABC.txt,以便任何其他进程无法读取或写入它.我知道枚举System.IO.FileShare可能是处理这个问题的正确方法.但我用另一种方式,我不确定它是否正确.以下是我的解决方案.

我在文件夹中添加了另一个文件Lock.txt.在我可以读取或写入文件ABC.txt之前,我必须能够从文件Lock.txt中读取.在我读取或写入文件ABC.txt后,我必须释放该功能.以下是代码.

        #region Enter the lock
        FileStream lockFileStream = null;
        bool lockEntered = false;
        while (lockEntered == false)
        {
            try
            {
                lockFileStream = File.Open("Lock.txt", FileMode.Open, FileAccess.Read, FileShare.None);
                lockEntered = true;
            }
            catch (Exception)
            {
                Thread.Sleep(500);
            }
        }
        #endregion

        #region Do the work
        // Read from or write to File ABC.txt
        // Read from or write to other files
        #endregion

        #region Release the lock
        try
        {
            if (lockFileStream != null)
            {
                lockFileStream.Dispose();
            }
        }
        catch
        {
        }
        #endregion
Run Code Online (Sandbox Code Playgroud)

在我的电脑上,似乎这个解决方案运行良好,但我仍然无法确定它是否合适.

编辑:多个进程,而不是同一进程中的多线程.

c# multithreading

30
推荐指数
2
解决办法
4万
查看次数

cordova应用程序在启动屏幕显示之前显示黑屏

我正在使用Intel XDK开发一个Web应用程序,该应用程序可通过Cordova在线构建我的应用程序。我使用初始屏幕插件添加了初始屏幕。当我启动我的应用程序时,启动屏幕出现。但是在启动屏幕显示之前,黑屏会先显示一小会儿。我如何使它立即显示初始屏幕而没有先出现黑屏。

我用Google搜索了几天。然后我发现许多其他人都遇到了这个问题。但是似乎解决方案不能帮助我..

我尝试将AutoHideSplashScreen设置为false,并且SplashScreenDelay = 10000(或更高版本),并在所有事物准备就绪(app.Ready,deviceready ..)时隐藏启动屏幕。

任何帮助将不胜感激,谢谢。

cordova

5
推荐指数
1
解决办法
6549
查看次数

ASP.NET 5支持OWIN是什么意思?

我已经使用ASP.NET MVC将近4年了.我喜欢它,我对ASP.NET vNext(可能是5)非常感兴趣.我想知道它的生命周期(不是MVC 6).

Microsoft的ASP.NET 5概述中所述,

新管道也支持OWIN.

这个词支持的意思是什么?这是否意味着ASP.NET vNext实现了OWIN的生命周期或类似"我们可以向ASP.NET vNext应用程序添加中间件"之类的东西?

asp.net-core

2
推荐指数
1
解决办法
1651
查看次数

标签 统计

asp.net-core ×1

c# ×1

cordova ×1

multithreading ×1