예제 #1
0
    public SDFileTask GetNextFreeSDFileTask()
    {
        SDFileTask sdFileTask = _pool.Find(x => !x.InUse);

        if (sdFileTask != null)
        {
            sdFileTask.InUse = true;
        }
        else
        {
            sdFileTask       = new SDFileTask();
            sdFileTask.InUse = true;
            _pool.Add(sdFileTask);
        }

        return(sdFileTask);
    }
예제 #2
0
    public static void CopyFileAsync(string sourceFilename, string targetFilename)
    {
        SDFileTask sdFileTask = _sdFileTaskPool.GetNextFreeSDFileTask();

        sdFileTask.CopyFileAsync(sourceFilename, targetFilename);
    }
예제 #3
0
    public static void WriteAllBytesAsync(string filename, byte[] bytes, int overrideLength = 0)
    {
        SDFileTask sdFileTask = _sdFileTaskPool.GetNextFreeSDFileTask();

        sdFileTask.WriteAllBytesAsync(filename, bytes, overrideLength);
    }