作为一个programmer你应该了解的latency

 
 
 
 
 
Latency Comparison Numbers
--------------------------
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns
Send 1K bytes over 1 Gbps network 10,000 ns 0.01 ms
Read 4K randomly from SSD* 150,000 ns 0.15 ms
Read 1 MB sequentially from memory 250,000 ns 0.25 ms
Round trip within same datacenter 500,000 ns 0.5 ms
Read 1 MB sequentially from SSD* 1,000,000 ns 1 ms 4X memory
Disk seek 10,000,000 ns 10 ms 20x datacenter roundtrip
Read 1 MB sequentially from disk 20,000,000 ns 20 ms 80x memory, 20X SSD
Send packet CA->Netherlands->CA 150,000,000 ns 150 ms
Notes
-----
1 ns = 10-9 seconds
1 ms = 10-3 seconds
* Assuming ~1GB/sec SSD
Credit
------
By Jeff Dean: http://research.google.com/people/jeff/
Originally by Peter Norvig: http://norvig.com/21-days.html#answers
Contributions
-------------
Some updates from: https://gist.github.com/2843375
Great 'humanized' comparison version: https://gist.github.com/2843375
Visual comparison chart: http://i.imgur.com/k0t1e.png
 
 
 
 
 
 
以下图片参考自:
 
以下图片参考自:intel core i7
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常好,影院售票系统是一个非常实用的应用程序,可以帮助影院提高效率,方便观众购票。在开始编写之前,我们需要先确定系统的需求和功能点。下面是一个简单的需求列表: 1. 影院售票系统需要能够展示电影的信息,包括电影名称、上映时间、剧情简介、评分等信息。 2. 影院售票系统需要能够展示影厅的座位信息,并且能够标记已经售出的座位。 3. 观众需要能够选择电影和影院,并且能够选择座位。 4. 影院售票系统需要支持在线支付和退款功能。 5. 影院售票系统需要支持打印电影票功能。 接下来,我们可以开始编写影院售票系统了。首先,我们需要定义一些数据结构,如电影、影院、座位和电影票等。 ```csharp public class Movie { public string Name { get; set; } public DateTime ReleaseDate { get; set; } public string Description { get; set; } public float Rating { get; set; } } public class Theater { public string Name { get; set; } public List<Seat> Seats { get; set; } } public class Seat { public string SeatNumber { get; set; } public bool IsAvailable { get; set; } } public class Ticket { public Movie Movie { get; set; } public Theater Theater { get; set; } public Seat Seat { get; set; } public float Price { get; set; } } ``` 接下来,我们可以开始编写主要的逻辑了。在这个影院售票系统中,我们需要实现以下功能: 1. 展示电影信息。 2. 展示影厅座位信息。 3. 选择电影、影院和座位。 4. 在线支付和退款。 5. 打印电影票。 下面是一个简单的实现: ```csharp public class CinemaTicketingSystem { public List<Movie> Movies { get; set; } public List<Theater> Theaters { get; set; } public void ShowMovies() { foreach (var movie in Movies) { Console.WriteLine(movie.Name); Console.WriteLine(movie.ReleaseDate); Console.WriteLine(movie.Description); Console.WriteLine(movie.Rating); Console.WriteLine(); } } public void ShowTheaterSeats(Theater theater) { foreach (var seat in theater.Seats) { if (seat.IsAvailable) { Console.Write(seat.SeatNumber + "(Available) "); } else { Console.Write(seat.SeatNumber + "(Not Available) "); } } Console.WriteLine(); } public void SelectTicket(Movie movie, Theater theater, Seat seat) { if (seat.IsAvailable) { var ticket = new Ticket { Movie = movie, Theater = theater, Seat = seat, Price = 10 // 票价 }; Console.WriteLine($"You have selected {movie.Name} at {theater.Name} in seat {seat.SeatNumber}. The price is {ticket.Price}."); // 在这里实现在线支付和退款功能 // ... // 打印电影票 PrintTicket(ticket); } else { Console.WriteLine("The seat is not available."); } } public void PrintTicket(Ticket ticket) { Console.WriteLine("Movie: " + ticket.Movie.Name); Console.WriteLine("Theater: " + ticket.Theater.Name); Console.WriteLine("Seat: " + ticket.Seat.SeatNumber); Console.WriteLine("Price: " + ticket.Price); } } ``` 在主程序中,我们可以使用以下代码来测试影院售票系统: ```csharp var system = new CinemaTicketingSystem(); // 添加电影和影院信息 system.Movies = new List<Movie> { new Movie { Name = "Avengers: Endgame", ReleaseDate = new DateTime(2019, 4, 26), Description = "The Avengers take a final stand against Thanos.", Rating = 8.7f }, new Movie { Name = "Joker", ReleaseDate = new DateTime(2019, 10, 4), Description = "A failed comedian becomes a psychopathic criminal.", Rating = 8.5f }, new Movie { Name = "The Lion King", ReleaseDate = new DateTime(2019, 7, 19), Description = "A lion cub crown prince is tricked by a treacherous uncle.", Rating = 6.9f } }; system.Theaters = new List<Theater> { new Theater { Name = "Theater 1", Seats = new List<Seat> { new Seat { SeatNumber = "A1", IsAvailable = true }, new Seat { SeatNumber = "A2", IsAvailable = true } } }, new Theater { Name = "Theater 2", Seats = new List<Seat> { new Seat { SeatNumber = "B1", IsAvailable = true }, new Seat { SeatNumber = "B2", IsAvailable = true }, new Seat { SeatNumber = "B3", IsAvailable = false } } } }; // 展示电影信息 system.ShowMovies(); // 展示影厅座位信息 system.ShowTheaterSeats(system.Theaters[0]); // 选择电影、影院和座位,并打印电影票 system.SelectTicket(system.Movies[0], system.Theaters[0], system.Theaters[0].Seats[0]); ``` 这样,一个简单的影院售票系统就完成了。当然,这只是一个简单的示例,实际上,一个完整的影院售票系统需要考虑更多的细节和功能,例如会员系统、优惠活动、场次管理等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值