Số 27 “Xác minh cách thể hiện các điều kiện tỷ lệ cá cược bóng đá châu âu bảng quy tắc Corticon”
20180525 Progress Corticon
Mục này được đóng góp bởi Assist Co, Ltd ()
|
|
Tên tôi là Hiroshi Tanahashi và tôi phụ trách sản phẩm Progress từ tháng 4 năm 2016
Chà, tôi đã viết chuyên mục kỹ thuật này bốn lần rồi nhưng nội dung khó quá! Vì tôi có nhiều cơ hội để chỉ ra điều này nên lần này tôi muốn tóm tắt nó tỷ lệ cá cược bóng đá châu âu một chuyên mục đơn giản
tỷ lệ cá cược bóng đá châu âu Corticon, quá trình đưa ra một phán đoán nhất định có thể được mô tả với một mức độ tự do nhất định tỷ lệ cá cược bóng đá châu âu thế giới Corticon, do đó, phán đoán tương tự có thể được thể hiện hơi khác nhau tùy thuộc vào người viết nó Lần này, tôi muốn trình bày hai cách viết câu điều kiện khác nhau và làm rõ sự khác biệt Chúng tôi sẽ đánh giá cao nếu bạn coi đây là một phần tỷ lệ cá cược bóng đá châu âu các quyết định về chính sách phát triển của mình khi thiết kế
Cách viết câu lệnh điều kiện
Thuộc tính và cài đặt từ vựng
| Tên thực thể | Tên thuộc tính | Loại dữ liệu | Bắt buộc | chế độ | Mô tả |
| kiểm tra | Tên thực thể | ||||
| _str | chuỗi | Không | Tạm thời | Khu vực làm việc kiểu chuỗi | |
| TGT_NUMERIC | Số nguyên | Có | Cơ sở | Số được xác định trước | |
Đơn giản hãy nghĩ rằng có thuộc tính loại chuỗi và thuộc tính loại số nguyên Vui lòng bỏ qua tên thực thể, tên thuộc tính, cài đặt chế độ và bắt buộc
Hãy sử dụng từ vựng này để thực hiện các quy tắc bên dưới
Nếu giá trị của testTGT_NUMERIC là 7, hãy gán giá trị "SEVEN" cho test_str
Nếu giá trị của testTGT_NUMERIC khác 7, hãy gán giá trị "NOT SEVEN" cho test_str
Khi viết quy tắc này, có hai cách viết câu lệnh điều kiện như hình bên dưới
|
|
Bạn thích viết nó vào đâu hơn? Hãy xem xét điều này từ góc độ hiệu suất Nói cách khác, hãy tìm hiểu quá trình nào nhanh hơn
Nói chung, tốc độ xử lý các câu lệnh được sử dụng tỷ lệ cá cược bóng đá châu âu các chương trình viết bằng ngôn ngữ phát triển có thể được xác định bằng thời gian xử lý gần đúng theo số chu kỳ của các từ lệnh, vì các từ lệnh có thể được phân tích khi được thay thế bằng ngôn ngữ máy Vì vậy, có thể khách quan xác định mệnh lệnh này nhanh, mệnh lệnh này chậm Tuy nhiên, vì Corticon tối ưu hóa bảng quy tắc nên không có lựa chọn nào khác ngoài việc kiểm tra và xác nhận
Tuy nhiên, việc so sánh thời gian xử lý này không thể chắc chắn vì có nhiều yếu tố xử lý ngắt khác và có vẻ như khó có thể phát hiện ra sự khác biệt chỉ một vài chu kỳ tỷ lệ cá cược bóng đá châu âu từ lệnh, nhưng tôi muốn thử tăng số lần thử và nắm bắt xu hướng
Tạo quy tắc để đo thời gian xử lý (tạo toán tử mở rộng)
Thời gian nhỏ nhất có thể đo được tỷ lệ cá cược bóng đá châu âu Java7 là nano giây và có thể sử dụng phương pháp sau
loại dài SystemnanoTime()
Sử dụng phương pháp này để triển khai toán tử mở rộng và sử dụng nó để đo tốc độ Cách tạo toán tử mở rộnghoặc Vui lòng tham khảo hướng dẫn sử dụng ``Hướng dẫn sử dụng tiện ích mở rộng Chương 10: Tạo tiện ích mở rộng'' của Corticon để biết chi tiết
Sau đây là nguồn java của toán tử mở rộng được tạo
lớp công khai Triển khai mở rộng ICcStandAloneExtension
trả về javamathBigInteger(LongtoString(wlong));
}
}
Một lưu ý phụ là Corticon có khả năng mở rộng tuyệt vời, vì vậy vui lòng tạo ngày càng nhiều phương pháp để cải thiện sức mạnh của nó
Tạo quy tắc đo thời gian xử lý -1-
Thuộc tính và cài đặt từ vựng
| Tên thực thể | Tên thuộc tính | Loại dữ liệu | Bắt buộc | chế độ | Mô tả |
|---|---|---|---|---|---|
| kiểm tra | Tên thực thể | ||||
| _end | Số nguyên | Không | Tạm thời | Nano giây ở cuối | |
| _nanotime | Số nguyên | Không | Tạm thời | Tính theo nano giây | |
| _bắt đầu | Số nguyên | Không | Tạm thời | Nano giây khi bắt đầu | |
| _lần | Số nguyên | Không | Tạm thời | Quầy | |
| ave | Thập phân | Không | Cơ sở | Trung bình tính toán nano giây | |
| tối đa | Thập phân | Không | Cơ sở | Số nano giây được tính toán tối đa | |
| phút | Thập phân | Không | Cơ sở | Số nano giây tính toán tối thiểu | |
| TGT_NUMERIC | Số nguyên | Có | Cơ sở | Số được xác định trước | |
| TIMES | Số nguyên | Có | Cơ sở | Số lần được xác định trước | |
Chúng tôi đã triển khai từ vựng để thu được giá trị trung bình, tối đa và tối thiểu bằng cách thực hiện số lần được chỉ định để nắm bắt xu hướng
Tạo bảng quy tắc bằng cách sử dụng từ vựng này
Đầu tiên, hãy tạo một bảng quy tắc để thực hiện quá trình khởi tạo
|
|
tỷ lệ cá cược bóng đá châu âu dòng hành động A, "Bộ đếm" được đặt thành 0 tỷ lệ cá cược bóng đá châu âu dòng hành động B, "trung bình của nano giây được tính toán" được đặt thành 0 Nội dung trên được triển khai dưới dạng xử lý khởi tạo tỷ lệ cá cược bóng đá châu âu cột 0
Click vào hình để phóng to
Bạn đã đặt giới hạn ``số lần được chỉ định trước'' tỷ lệ cá cược bóng đá châu âu bộ lọc Nếu tôi đặt nó tỷ lệ cá cược bóng đá châu âu một điều kiện, nó có xu hướng trở nên phức tạp, vì vậy tôi đặt nó vào một bộ lọc Đầu tiên, dòng hành động A tăng "bộ đếm" Dòng Hành động B sử dụng toán tử mở rộng được triển khai để thu được giá trị ``nano giây khi bắt đầu'' Ở trên được thực hiện dưới dạng xử lý khởi tạo ở cột thứ 0 của điều kiện
tỷ lệ cá cược bóng đá châu âu điều kiện một dòng, việc testTGT_NUMERIC có bằng 7 hay không được xác định bởi T(true)/F(false) Tuy nhiên, mục đích của quy tắc này là đo thời gian xử lý điều kiện, do đó quá trình xử lý tương tự được đặt sau nhánh điều kiện Dòng hành động C nhận được giá trị "nano giây ở cuối" sau khi điều kiện được đánh giá Điều tôi muốn đo lường là xử lý nhánh, vì vậy mô tả giống như thế này và cả T (đúng) và F (sai) đều được đặt tỷ lệ cá cược bóng đá châu âu dòng hành động D, ``nano giây được tính toán'' được tính toán và gán cho testnanotime bằng cách tính toán sự khác biệt giữa ``nano giây ở cuối'' và ``nano giây ở đầu'' SystemnanoTime() của Java là một phương pháp thu được giá trị tức thời tính bằng nano giây, vì vậy việc tính toán chênh lệch sẽ tính ra thời gian thực tế Dòng hành động D tính toán mức trung bình của testnanotime là ``trung bình của nano giây được tính toán'' Giá trị thu được lần này được gọi là "giá trị đủ lớn" tỷ lệ cá cược bóng đá châu âu toán học, do đó có khả năng bị tràn tỷ lệ cá cược bóng đá châu âu quá trình tính toán Vì vậy, chúng tôi xác định cách tính như vậy để tránh tràn
Mặc dù có thể không cần thiết cho mục đích đo lường nhưng hãy tạo một bảng quy tắc để chứa các giá trị nano giây tối đa và tối thiểu được tính toán
|
|
Sắp xếp quá trình xử lý ban đầu và xử lý đo lường tỷ lệ cá cược bóng đá châu âu luồng quy tắc
|
|
Chúng tôi sử dụng "kết nối" vì có lệnh xử lý
Hãy đo lường nó bằng một bài kiểm tra quy tắc
|
|
Kết quả của 100000 lần thử, sai số rất lớn vì giá trị tối đa và tối thiểu lớn hơn 4000 lần nhưng trung bình là 7 mili giây
Tạo quy tắc đo thời gian xử lý -2-
Tạo bảng quy tắc và luồng quy tắc để so sánh theo cách tương tự
Click vào hình để phóng to
Mọi thứ đều giống nhau ngoại trừ cách viết điều kiện
|
|
Hãy đo lường nó bằng một bài kiểm tra quy tắc
|
|
Kết quả của 100000 lần thử, giá trị tối đa và tối thiểu tăng 15000 lần nhưng thời gian trung bình là 8,5 mili giây
Xem xét kết quả đo
Khi thực hiện quy tắc này, tôi dự kiến sẽ có sự chênh lệch 2-3 lần, nhưng sau khi chạy nhiều lần, kết quả không lớn đến thế Sự thật là đơn vị đo lường quá nhỏ và sai số quá lớn khiến việc nắm bắt xu hướng trở nên khó khăn
Mặt khác, từ quan điểm về khả năng duy trì của bảng quy tắc, việc đưa ra phán đoán điều kiện không chỉ T(true)/F(false) tỷ lệ cá cược bóng đá châu âu tương lai sẽ dễ dàng hơn Và tôi nghĩ rằng việc không sử dụng T(true)/F(false) là một cách tận dụng các đặc điểm của Corticon Corticon quản lý các quy tắc bằng bảng tính Điều này được hưởng lợi từ phương pháp xác định quy tắc vượt trội ở nhiều lựa chọn thay vì chỉ có hai lựa chọn



