Java SE 20 แƒ’แƒแƒ›แƒแƒจแƒ•แƒ”แƒ‘แƒ

แƒ”แƒฅแƒ•แƒกแƒ—แƒ•แƒ˜แƒแƒœแƒ˜ แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, Oracle-แƒ›แƒ แƒ’แƒแƒ›แƒแƒฃแƒจแƒ•แƒ Java SE 20 แƒžแƒšแƒแƒขแƒคแƒแƒ แƒ›แƒ (Java Platform, Standard Edition 20), แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก OpenJDK แƒžแƒ แƒแƒ”แƒฅแƒขแƒก แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒแƒชแƒœแƒแƒ‘แƒแƒ แƒ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒก. แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒ›แƒแƒซแƒ•แƒ”แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ“แƒ, Java SE 20 แƒ˜แƒœแƒแƒ แƒฉแƒฃแƒœแƒ”แƒ‘แƒก แƒฃแƒ™แƒฃแƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒแƒ“แƒแƒ‘แƒแƒก Java แƒžแƒšแƒแƒขแƒคแƒแƒ แƒ›แƒ˜แƒก แƒฌแƒ˜แƒœแƒ แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒ—แƒแƒœ - แƒแƒ“แƒ แƒ” แƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ Java แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ แƒฃแƒชแƒ•แƒšแƒ”แƒšแƒ˜ แƒ˜แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก แƒแƒฎแƒแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒ— แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒแƒก. Java SE 20-แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒ–แƒ แƒ‘แƒ˜แƒšแƒ“แƒ”แƒ‘แƒ˜ (JDK, JRE แƒ“แƒ Server JRE) แƒ›แƒแƒ›แƒ–แƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ... Linux (x86_64, AArch64), Windows (x86_64) แƒ“แƒ macOS (x86_64, AArch64). OpenJDK แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜, Java 20-แƒ˜แƒก แƒกแƒแƒชแƒœแƒแƒ‘แƒแƒ แƒ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒกแƒ แƒฃแƒšแƒแƒ“ แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒกแƒแƒ GPLv2 แƒšแƒ˜แƒชแƒ”แƒœแƒ–แƒ˜แƒ˜แƒ— GNU ClassPath แƒ’แƒแƒ›แƒแƒœแƒแƒ™แƒšแƒ˜แƒกแƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ™แƒแƒ›แƒ”แƒ แƒชแƒ˜แƒฃแƒš แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒ”แƒ‘แƒ—แƒแƒœ แƒ“แƒ˜แƒœแƒแƒ›แƒ˜แƒฃแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ˜แƒซแƒšแƒ”แƒ•แƒ.

Java SE 20 แƒ™แƒแƒขแƒ”แƒ’แƒแƒ แƒ˜แƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ, แƒ แƒแƒ’แƒแƒ แƒช แƒœแƒแƒ แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒก แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒ˜แƒ— แƒแƒฆแƒญแƒฃแƒ แƒ•แƒ˜แƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒช แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒ›แƒ“แƒ” แƒ’แƒแƒ›แƒแƒ•แƒ. Java SE 17 แƒฃแƒœแƒ“แƒ แƒ˜แƒฅแƒœแƒแƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒ’แƒ แƒซแƒ”แƒšแƒ•แƒแƒ“แƒ˜แƒแƒœแƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒก (LTS) แƒ’แƒแƒœแƒจแƒขแƒแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒช 2029 แƒฌแƒšแƒแƒ›แƒ“แƒ” แƒ’แƒแƒ›แƒแƒ•แƒ. แƒจแƒ”แƒ’แƒแƒฎแƒกแƒ”แƒœแƒ”แƒ‘แƒ—, แƒ แƒแƒ› Java 10-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒ“แƒแƒœ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ แƒแƒฎแƒแƒš แƒ’แƒแƒœแƒ•แƒ˜แƒ—แƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ–แƒ” แƒ’แƒแƒ“แƒแƒ•แƒ˜แƒ“แƒ, แƒ แƒแƒช แƒแƒฎแƒแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒ แƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒฃแƒคแƒ แƒ แƒ›แƒแƒ™แƒšแƒ” แƒชแƒ˜แƒ™แƒšแƒก แƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒแƒ‘แƒก. แƒแƒฎแƒแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒแƒšแƒ˜ แƒแƒฎแƒšแƒ แƒ”แƒ แƒ— แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ•แƒแƒ“ แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒแƒ“ แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ’แƒแƒœแƒจแƒขแƒแƒ”แƒ‘แƒแƒจแƒ˜ แƒ•แƒ˜แƒ—แƒแƒ แƒ“แƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒ›แƒ–แƒ แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒก แƒ“แƒ แƒกแƒแƒ˜แƒ“แƒแƒœแƒแƒช แƒ’แƒแƒœแƒจแƒขแƒแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒงแƒแƒ•แƒ”แƒš แƒ”แƒฅแƒ•แƒก แƒ—แƒ•แƒ”แƒจแƒ˜ แƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒ’แƒแƒ›แƒแƒ˜แƒงแƒแƒคแƒ แƒแƒฎแƒแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒแƒ‘แƒ˜แƒšแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

Java 20-แƒ˜แƒก แƒแƒฎแƒแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก:

  • แƒจแƒ”แƒ›แƒแƒ—แƒแƒ•แƒแƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ Scoped Values-แƒ˜แƒก แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ แƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒฃแƒชแƒ•แƒšแƒ”แƒšแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ–แƒ˜แƒแƒ แƒ”แƒ‘แƒ แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก แƒ“แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜ แƒ’แƒแƒชแƒ•แƒšแƒ แƒจแƒ•แƒ˜แƒšแƒแƒ‘แƒ˜แƒš แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก (แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ›แƒ”แƒ›แƒ™แƒ•แƒ˜แƒ“แƒ แƒ”แƒแƒ‘แƒ˜แƒ— แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ). Scoped Values โ€‹โ€‹แƒ’แƒแƒœแƒ™แƒฃแƒ—แƒ•แƒœแƒ˜แƒšแƒ˜แƒ แƒœแƒแƒ™แƒแƒ“แƒฃแƒ -แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒชแƒ•แƒšแƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒ˜แƒก แƒฉแƒแƒกแƒแƒœแƒแƒชแƒ•แƒšแƒ”แƒ‘แƒšแƒแƒ“ แƒ“แƒ แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜แƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ“แƒ˜แƒ“แƒ˜ แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒก (แƒแƒ—แƒแƒกแƒแƒ‘แƒ˜แƒ— แƒ“แƒ แƒ›แƒ˜แƒšแƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒ— แƒœแƒแƒ™แƒแƒ“แƒฃแƒ แƒ˜) แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒแƒก. Scoped Values-แƒกแƒ แƒ“แƒ แƒœแƒแƒ™แƒแƒ“แƒฃแƒ -แƒšแƒแƒ™แƒแƒšแƒฃแƒ  แƒชแƒ•แƒšแƒแƒ“แƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ แƒ˜แƒกแƒแƒ, แƒ แƒแƒ› แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ˜แƒฌแƒ”แƒ แƒ”แƒ‘แƒ แƒ”แƒ แƒ—แƒฎแƒ”แƒš, แƒแƒ  แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ›แƒแƒ—แƒ˜ แƒจแƒ”แƒชแƒ•แƒšแƒ แƒจแƒ”แƒ›แƒ“แƒ’แƒแƒ›แƒจแƒ˜ แƒ“แƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒ แƒฉแƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒœแƒแƒ™แƒแƒ“แƒฃแƒ แƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ—แƒ”แƒšแƒ˜ แƒฎแƒแƒœแƒ’แƒ แƒซแƒšแƒ˜แƒ•แƒแƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜. class Server { final static ScopedValue CURRENT_USER = new ScopedValue(); void serve(Request request, Response response) { var level = (request.isAuthorized()? ADMIN : GUEST); var user = new User(level); ScopedValue.where(CURRENT_USER, user) .run(() -> Application.handle(request, response)); } } class DatabaseManager { DBConnection open() { var user = Server.CURRENT_USER.get(); แƒ—แƒฃ (!user.canOpen()) แƒ’แƒแƒ›แƒแƒ˜แƒขแƒแƒœแƒก แƒแƒฎแƒแƒš InvalidUserException(); แƒ“แƒแƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒแƒฎแƒแƒš DBConnection(...); } }
  • แƒ“แƒแƒ”แƒ›แƒแƒขแƒ แƒฉแƒแƒœแƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒแƒ‘แƒšแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒแƒ แƒ” แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ แƒ˜ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒก Java 16-แƒจแƒ˜ แƒ“แƒแƒœแƒ”แƒ แƒ’แƒ˜แƒš แƒจแƒแƒ‘แƒšแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ‘แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก แƒฉแƒแƒœแƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ™แƒšแƒแƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒšแƒแƒ“. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“: record Point(int x, int y) {} static void printSum(Object obj) { if (obj instanceof Point p) { int x = px(); int y = py(); System.out.println(x+y); } }
  • แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒš แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ”แƒ‘แƒจแƒ˜ แƒจแƒแƒ‘แƒšแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ‘แƒ˜แƒก แƒ›แƒ”แƒแƒ—แƒฎแƒ” แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ แƒ˜ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ˜แƒก แƒ”แƒขแƒ˜แƒ™แƒ”แƒขแƒ”แƒ‘แƒก แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒœ แƒ›แƒแƒฅแƒœแƒ˜แƒšแƒ˜ แƒจแƒแƒ‘แƒšแƒแƒœแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒกแƒ”แƒ แƒ˜แƒแƒก แƒ–แƒฃแƒกแƒขแƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒชแƒ•แƒšแƒแƒ“, แƒ แƒแƒช แƒแƒ“แƒ แƒ” แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒ“แƒ if-else แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒชแƒฃแƒšแƒแƒ‘แƒ˜แƒ— แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒก. static String formatterPatternSwitch(Object obj) { return switch (obj) { case Integer i -> String.format("int %d", i); case Long l -> String.format("long %d", l); case Double d -> String.format("double %f", d); case String s -> String.format("String %s", s); default -> o.toString(); }; }
  • แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ FFM (Foreign Function & Memory) API-แƒ˜แƒก แƒ›แƒ”แƒแƒ แƒ” แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ แƒ˜ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช Java แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒฃแƒ แƒ—แƒ˜แƒ”แƒ แƒ—แƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ“แƒœแƒ”แƒœ แƒ’แƒแƒ แƒ” แƒ™แƒแƒ“แƒ—แƒแƒœ แƒ“แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ—แƒแƒœ แƒ’แƒแƒ แƒ” แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ”แƒ‘แƒ˜แƒ“แƒแƒœ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒซแƒแƒฎแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ JVM-แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒ— แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ—.
  • แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒแƒ แƒ” แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ แƒ˜ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒกแƒฃแƒ‘แƒฃแƒฅแƒ˜ แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒ แƒ“แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒก แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒฎแƒแƒ แƒ˜แƒกแƒฎแƒ˜แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒซแƒแƒคแƒ˜แƒแƒœแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒฌแƒ”แƒ แƒแƒก แƒ“แƒ แƒจแƒ”แƒœแƒแƒ แƒฉแƒฃแƒœแƒ”แƒ‘แƒแƒก.
  • แƒ“แƒแƒ”แƒ›แƒแƒขแƒ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒแƒ แƒแƒšแƒ”แƒšแƒ˜แƒ–แƒ›แƒ˜แƒก แƒ”แƒฅแƒกแƒžแƒ”แƒ แƒ˜แƒ›แƒ”แƒœแƒขแƒฃแƒšแƒ˜ API-แƒ˜แƒก แƒ›แƒ”แƒแƒ แƒ” แƒ•แƒ”แƒ แƒกแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒซแƒแƒคแƒ˜แƒแƒœแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒ–แƒ” แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ“แƒแƒ•แƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒ”แƒ แƒ— แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒแƒ“ แƒ’แƒแƒœแƒฎแƒ˜แƒšแƒ•แƒ˜แƒ—.
  • แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ Vector API-แƒ˜แƒก แƒ›แƒ”แƒฎแƒฃแƒ—แƒ” แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ แƒ˜ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ. แƒ”แƒก API แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒก แƒ•แƒ”แƒฅแƒขแƒแƒ แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒ—แƒ•แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ x86_64 แƒ“แƒ AArch64 แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ˜แƒก แƒ•แƒ”แƒฅแƒขแƒแƒ แƒฃแƒšแƒ˜ แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ”แƒ แƒ—แƒ“แƒ แƒแƒฃแƒšแƒแƒ“ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒก แƒ›แƒ แƒแƒ•แƒแƒš แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒ–แƒ” (SIMD). HotSpot JIT แƒ™แƒแƒ›แƒžแƒ˜แƒšแƒแƒขแƒแƒ แƒ˜แƒก แƒกแƒ™แƒแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ•แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒกแƒ’แƒแƒœ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ˜แƒ—, แƒแƒฎแƒแƒšแƒ˜ API แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ•แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒชแƒแƒšแƒกแƒแƒฎแƒ แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒžแƒแƒ แƒแƒšแƒ”แƒšแƒฃแƒ แƒ˜ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒฌแƒงแƒแƒ แƒ: opennet.ru

แƒจแƒ”แƒ˜แƒซแƒ˜แƒœแƒ”แƒ— แƒกแƒแƒ˜แƒ›แƒ”แƒ“แƒ แƒฐแƒแƒกแƒขแƒ˜แƒœแƒ’แƒ˜ DDoS แƒ“แƒแƒชแƒ•แƒ˜แƒก แƒ›แƒฅแƒแƒœแƒ” แƒกแƒแƒ˜แƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, VPS VDS แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก ๐Ÿ”ฅ แƒจแƒ”แƒ˜แƒซแƒ˜แƒœแƒ”แƒ— แƒกแƒแƒ˜แƒ›แƒ”แƒ“แƒ แƒ•แƒ”แƒ‘แƒกแƒแƒ˜แƒขแƒ˜แƒก แƒฐแƒแƒกแƒขแƒ˜แƒœแƒ’แƒ˜ DDoS แƒ“แƒแƒชแƒ•แƒ˜แƒ—, VPS VDS แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ”แƒ‘แƒ˜ | ProHoster