mszhangxuefei
2013-03-21
394浏览量
所谓同步:如果在代码中调用了一个方法,则必须等待该方法所有的代码执行完毕之后,才能回到原来的地方执行下一行代码。
异步:如果不等待调用的方法执行完,就执行下一行代码。
namespace AsyncProgram { class Program { //Calculate the folder's total size private static Int64 CalculateFolderSize(string FolderName) { if (Directory.Exists(FolderName) == false) { throw new DirectoryNotFoundException("文件不存在"); } DirectoryInfo rootDir = new DirectoryInfo(FolderName); //Get all subfolders DirectoryInfo[] childDirs = rootDir.GetDirectories(); //Get all files of current folder FileInfo[] files = rootDir.GetFiles(); Int64 totalSize = 0; //sum every file size foreach (FileInfo file in files) { totalSize += file.Length; } //sum every folder foreach (DirectoryInfo dir in childDirs) { totalSize += CalculateFolderSize(dir.FullName); } return totalSize; } static void Main(string[] args) { Int64 size; String FolderName; Console.WriteLine("Please input the name of folder (C:\\Windows):"); FolderName = Console.ReadLine(); size = CalculateFolderSize(FolderName); Console.WriteLine("\nThe size of folder {0} is {1}字节\n", FolderName, size); Console.ReadKey(); } } }
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
集结各类场景实战经验,助你开发运维畅行无忧