際際滷

際際滷Share a Scribd company logo
Zagursky
个舒亶弍亠
亠于亠仆ム舒 仄仆仂亞仂亰舒亟舒仆仂
           仆舒 Java
public final class RequestCreateAvatar {
  private final String avatarName;

}
                  S
  private final Character character;
                                                          R
void createAvatar(String avatarName, Character character) {
                               MsgRequest
  sendCmd(new RequestCreateAvatar(avatarName, character));
      Async<Void> createAvatar(String avatarName,          Character character) {
}
          CreateAvatarResult result = call(avatarManager.createAvatar(
                avatarName, characterfinal class CreateAvatarHandler {
                                public
          ));                                                     RequestHandler()
                                  public void handle(RequestCreateAvatar msg) {
          sendMsgToClient(result); CreateAvatarResult result = avatarManager.createAvatar(msg);
                                    sendMsg(new ResponseCreateAvatar(result));
                          MsgResponse
          return nothing();       }
      }                              }

public final class CreateAvatarResponseHandler {
  public void handle(ResponseCreateAvatar msg) {
    sendMsgToClient(msg);  ResponseHandler()
  }
}
Zagursky
亳亳仆
 丱仂亠 仗亳舒 仗仂仂亶 仍亳仆亠亶仆亶 Java-从仂亟
 弌-仗仂仂从亳 仍亳从仂仄 仆舒从仍舒亟仆
 丐亠弍亠 仂舒仆亳 仂亟仆仂仗仂仂仆亶 亟亳亰舒亶仆
弌 于仂 仗亳亠亞仂 仗仂仍舒
仆仄亠仆舒仂   仍舒仆亳仂于亳从



   舒仆舒亶仄        仆仗亠从亳亳
弌亳仆舒从亳 (1)
          import fibers.Async;
          import static fibers.Fiber.*;

Async<Integer>{ calcResult(int factor) {
         class Foo
           Async<Integer> calcResult(int factor) {
  return result(42*factor);
             return result(42*factor);
Async<Integer> doWork() {
}          }

  int tmp Async<Integer> doWork() {
            = all(calcResult(314));
             int tmp = call(calcResult(314));
  return result(tmp);
             return result(tmp);
}        }
           }
弌亳仆舒从亳 (2)
class Foo {
  void bar(FiberManager f) {
    f.scheduleFiber(doWork("Hi!"));
  }
}
亠仗舒亳亠仄亶 仄亠仂亟
Async<String> baz(String second) {
  String first = call(getFirst());
  return result(join(first, second));
}
舒仄亠仆舒 亳仂亟仆仂亞仂 仄亠仂亟舒
Async<String> baz(String second) {
  return new baz_Context(second);
}
仂仆亠从 于亰仂于舒 仄亠仂亟舒
class baz_Context extends Async<String> {
  String _second, first;

    @Override
    void update() { state = baz_Async(this); }
}
仆仄亠仆亳仂于舒仆仆亶 仄亠仂亟
int baz_Async(baz_Context c) {
  switch (c.state) {
    case 0: c.result = getFirst(); return 1;
    case 1: c.first = (String) c.takeResult();
            c.result = join(c.first, c._second);
            return -1;
  }
}
仆仄亠仆亳仂于舒仆亳亠 (1)
 仂亳从 仂亠从 舒亰于舒
   call
   yield
 舒于从舒 switch-case 亳 return
仆仄亠仆亳仂于舒仆亳亠 (2)
 舒从 仂弍仂亶亳 于亰仂于   Async<Integer> foo() {
  弍仍仂从舒 finally?       try {
                         int t = call(bar());
 亠 于亰于舒 亠亞仂!
                         return result(t);
                       } finally { close(); }
                     }
仆仄亠仆亳仂于舒仆亳亠 (3)
 仂亟仄亠仆舒 亟仂仗舒 从 仗舒舒仄亠舒仄 仄亠仂亟舒 亳
  仍仂从舒仍仆仄 仗亠亠仄亠仆仆仄
 int x; x = 42;  context.x = 42;
仆仄亠仆亳仂于舒仆亳亠 (4)
                     ...
                   case 42
...                  Context r = new bar_Context();
x = call(bar());     c.pushCall(r);
...
                     return 43;
                   case 43:
                     c.x = (String) c.takeResult();
                     ...
仆仄亠仆亳仂于舒仆亳亠 (5)
 亳亠从亳于, 仍舒ム亳亠 仆舒 亳仂亟仆亶 舒亶仍,
  于舒于仍ム 亳仆仄亠仆舒仂仂仄 于
  亞亠仆亠亳仂于舒仆仆亶 仄亠仂亟
 亅仂 仗仂亰于仂仍磳 亳仗仂仍亰仂于舒 仗仂舒亞仂于
  仂仍舒亟从
 亞舒仆亳亠仆亳亠: 仆亠仍亰  仗仂仄仂 Step Over
  仗亠亠亶亳 亠亠亰 仂从 舒亰于舒
从仍ム亠仆亳
 舒仆舒亶仄 仍仂于亳 于亠 亳从仍ム亠仆亳, 于仍亠亠于亳亠 亳亰
  Async-仄亠仂亟舒
 从仍ム亠仆亳亠 亰舒于仂舒亳于舒亠 于 仍亢亠弍仆亶 仂弍亠从
 亳 亰舒仗仂亠 亠亰仍舒舒 于亰于舒ム亳仄 Async-
  仄亠仂亟仂仄 亳从仍ム亠仆亳亠 于弍舒于舒亠 亰舒仆仂于仂
 仍亳 亳从仍ム亠仆亳亠 于仍亠舒亠 亰舒 仗亠亟亠仍 舒亶弍亠舒, 仂
  仂 亟亳舒亞仆仂亳亠 从舒从 仂亳弍从舒
亠于舒仆亳亠 舒亶弍亠舒
  从舒亢亟仂亶 仂从亠 于仂亟舒 于 Async-仄亠仂亟
  仗仂于亠磳, 仆亠 弍仍 仍亳 仗亠于舒仆 亠从亳亶
  舒亶弍亠
 仍亳 舒亶弍亠 弍仍 仗亠于舒仆, 仂
  于弍舒于舒亠 仍亢亠弍仆仂亠 亳从仍ム亠仆亳亠
  FiberInterruptedException
个仆从亳亳 FiberManager
 仍舒仆亳仂于亳从
 弍舒弍舒于舒亠 仗亳仂舒仆仂于从,
  于仂亰仂弍仆仂于仍亠仆亳亠 亳 仗亠于舒仆亳亠 舒亶弍亠仂于
 丕 于亠 舒亶弍亠仂于 仂亟亳仆舒从仂于亶 仗亳仂亳亠
舒舒仆亳亳 FiberManager
 个舒亶弍亠 亟仂仍亢仆 亳仗仂仍仆 于 仗仂磲从亠
  亟仂弍舒于仍亠仆亳 亳 于仂亰仂弍仆仂于仍亠仆亳
 亳仂舒仆仂于仍亠仆仆亠 舒亶弍亠 仆亠 亟仂仍亢仆
  亳仗仂仍仆
Thread safety
 亠仂亟 scheduleFiber() 亳 resumeFiber()
  仄仂亞 于仗仂仍仆 亳亰 仍ミ頴笑覚 仗仂仂从舒
 亠 仂舒仍仆亠 仄亠仂亟  仂仍从仂 亳亰 仗仂仂从舒, 从
  从仂仂仂仄 仗亳于磶舒仆 仗仍舒仆亳仂于亳从
 舒 从舒亢亟亶 仗仂仂从 亠 于仂亶 仗仍舒仆亳仂于亳从
StackTrace (1)
 Stack trace 亳亰 new Throwable().getStackTrace() 仆亠
  亟仂舒仂亠仆
 仂亞舒仄仄亳 仂亠 于亳亟亠:
    亠从 Async-仄亠仂亟仂于
    亠从 于 仄仂仄亠仆 仗仂仂亢亟亠仆亳 舒亶弍亠舒
 个舒亶弍亠 仄仂亢亠 弍 仂亰亟舒仆 于仆亳 亟亞仂亞仂 舒亶弍亠舒
 Stack trace 亟仂仍亢亠仆 舒亰亠舒 (resolve) 仂仍从仂
  仂亞亟舒, 从仂亞亟舒 仂仆 亠舒仍仆仂 仆亠仂弍仂亟亳仄
StackTrace (2)
 舒仆舒亶仄 仗仂仍舒亠 亢亠 亞仂仂于仂亠 亳从仍ム亠仆亳亠
  仂仄 亳从仍ム亠仆亳 仆亢仆仂 亟仂弍舒于亳
   亠从 舒亶弍亠舒
   亠从 仄仂仄亠仆舒 仗仂仂亢亟亠仆亳 舒亶弍亠舒
 仗仂仍亰亠 addSuppressed()
StackTrace (3)
 亠亠仂仗亠亟亠仍磳 仄亠仂亟 fillInStackTrace(),
  仂弍 仆亠 仂弍亳舒 仂弍仆亶 stack trace
 舒亳于 StackTraceElement[] 仂仄亳亠
  仂仍从仂 仗仂 亰舒仗仂 getCause() 亳 仗亳
  亠亳舒仍亳亰舒亳亳
java.lang.Throwable
     at asserts.Verify.fail(Verify.java:47)
     at gm.cc.c.t.CmdTeleportRandomByMapType.asyncRun$Async(CmdTeleportRandomByMapType.jav
     at gm.cc.c.t.CmdTeleportRandomByMapType$Context_asyncRun_LmsgSystem#locales#Abonent_.
     at f.i.AsyncImpl.updateSafe(AsyncImpl.java:37)
     at f.i.FiberImpl.updateInternal(FiberImpl.java:154)
     at f.i.FiberImpl.update(FiberImpl.java:130)
     at f.i.FiberManagerAbstract.updateFiber(FiberManagerAbstract.java:297)
     ...
     at java.lang.Thread.run(Thread.java:722)
     Suppressed: f.i.FiberStackTraceHolderException: Fiber stack trace
     Caused by: f.i.FiberStackTraceHolderException$Helper
          at asserts.Verify.fail(Verify.java:47)
          at gm.cc.c.t.CmdTeleportRandomByMapType.asyncRun(CmdTeleportRandomByMapType.java
          at ms.l.AsyncMsg.run(AsyncMsg.java:37)
          at ms.i.mp.ServerMsgPublisher.processMsg(ServerMsgPublisher.java:331)
          at ms.i.mp.ServerMsgPublisher.addMsgFast(ServerMsgPublisher.java:118)
          ...
          at java.lang.Thread.run(Thread.java:722)
丕亰从亳亠 仄亠舒 (1)
 仆仄亠仆舒仂 仄亠仆磳 亳亞仆舒 仄亠仂亟舒
 弌仍亢亠弍仆亠 仄亠仂亟 call() 亳 result() 于亠亰舒ム,
  仂弍 弍舒亶从仂亟 仂仂于亠于仂于舒仍 仆仂于仂亶 亳亞仆舒亠
 弍 仂仄 仆亠 亟仂亞舒亟于舒亠 IntelliJ Idea, 从仂仂舒
  于舒于仍磳 仗仂于亠从亳 仆舒 != null
 仆仄亠仆舒仂 于亠亰舒亠 舒从亳亠 仗仂于亠从亳 亳亰
  Async-仄亠仂亟仂于
丕亰从亳亠 仄亠舒 (2)
 仍亳 Async-仄亠仂亟 亟亠从仍舒亳亠 throws
  SomeUncheckedException
   亳仆舒从亳 java 仗仂亠弍亠 亠亞仂 仂弍舒弍仂从亳
   catch-弍仍仂从 亟仍 仂亞仂 亳从仍ム亠仆亳 仆亳从仂亞亟舒 仆亠 弍亟亠
    于亰于舒仆
   亳从仍ム亠仆亳亠 仗仂仍亠亳 于 舒仆舒亶仄, . 从. 亟仍 仆亠亞仂 仆亠
    仂仂于亠于ム亠亞仂 catch
丕亰从亳亠 仄亠舒 (3)
 弌亳仆舒从亳 仆亠 亰舒仗亠舒亠 于亰仂于 Async-
  仄亠仂亟舒 亳亰 仂弍仆仂亞仂
 亰于舒亠仄亶 仄亠仂亟 仆亠 亳仗仂仍仆亳
丕亰从亳亠 仄亠舒 (4)
 丐仂从亳 舒亰于舒 仆亠 仄仂亞 弍 于 弍仍仂从亠 finally
 亳亳仆舒: 于 仂仄 仍舒亠 亳从仍ム亠仆亳亠 仄仂亢亠
  弍 仗仂亳亞仆仂亳仂于舒仆仂
仍亠仆舒亳于仆亠 亠亠仆亳
 Apache Javaflow
 DaVinci VM
 Kilim
弌 亠  亞亠 亶  舒 亞   从 亳 亶
于 亠 亟   亳 亶 仗  仂 亞  舒 仄 仄 亳  , 仗  仂 亠 从  S k y f o r g e
           s.zagurskiy@corp.mail.ru

More Related Content

What's hot (20)

Parallel STL
Parallel STLParallel STL
Parallel STL
Evgeny Krutko
仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017
仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017
仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017
Mikhail Matrosov
仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳
仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳
仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳
victor-yastrebov
丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...
丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...
丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...
Alexey Paznikov
丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++. ...
丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++.   ...丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++.   ...
丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++. ...
Alexey Paznikov
仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?
仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?
仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?
Yauheni Akhotnikau
仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost
仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost
仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost
Sergey Platonov
丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...
丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...
丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...
Alexey Paznikov
丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...
丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...
丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...
Alexey Paznikov
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
Eugeniy Tyumentcev
仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...
仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...
仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...
Alexey Paznikov
Async clinic by by Sergey Teplyakov
Async clinic by by Sergey TeplyakovAsync clinic by by Sergey Teplyakov
Async clinic by by Sergey Teplyakov
Alex Tumanoff
Deep Dive C# by Sergey Teplyakov
Deep Dive  C# by Sergey TeplyakovDeep Dive  C# by Sergey Teplyakov
Deep Dive C# by Sergey Teplyakov
Alex Tumanoff
Haskell
HaskellHaskell
Haskell
DevDay
个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++
个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++
个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++
Alexander Granin
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
Eugeniy Tyumentcev
丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...
丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...
丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...
Alexey Paznikov
丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...
丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...
丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...
Alexey Paznikov
舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒
舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒
舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒
Sergey Platonov
丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...
丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...
丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...
Alexey Paznikov
仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017
仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017
仂于亠亟仆亠于仆亶 弌++: 舒仍亞仂亳仄 亳 亳亠舒仂 @ C++ Russia 2017
Mikhail Matrosov
仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳
仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳
仗仂仍亰仂于舒仆亳亠 ミ出狐-亠仂于 亟仍 仗仂于亠仆亳 从舒亠于舒 舒亰舒弍仂从亳
victor-yastrebov
丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...
丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...
丐 - 于亠仆舒 2015 - 亠从亳 8. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 亳仗仂仍亰仂于舒仆亳...
Alexey Paznikov
丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++. ...
丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++.   ...丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++.   ...
丐 - 仂亠仆 2014 - 亠从亳 5 - 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 磶从亠 弌++. ...
Alexey Paznikov
仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?
仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?
仍 亠亞仂 仄 亟亠仍舒仍亳 于仂亶 舒从仂仆亶 亠亶仄于仂从 亳 仂 亳亰 仂亞仂 于仍仂?
Yauheni Akhotnikau
仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost
仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost
仆仂仆 仂仍亳仆, 亠仄仆仂亞仂 仂 Boost
Sergey Platonov
丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...
丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...
丐 - 于亠仆舒 2015 - 亠从亳 3. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆舒仍. 仂从舒仍仆亠 亟舒仆仆亠 仗仂...
Alexey Paznikov
丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...
丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...
丐 - 于亠仆舒 2015 - 亠从亳 6. 舒亰舒弍仂从舒 仗舒舒仍仍亠仍仆 从 亟舒仆仆 仆舒 仂仆仂于...
Alexey Paznikov
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
Eugeniy Tyumentcev
仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...
仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...
仍舒亞亳仆 .., 舒亰仆亳从仂于 .., 仆仂仂于 .. 仗亳仄亳亰舒亳 亳仆仂仄舒亳仂仆仆 仂弍仄亠仆仂于...
Alexey Paznikov
Async clinic by by Sergey Teplyakov
Async clinic by by Sergey TeplyakovAsync clinic by by Sergey Teplyakov
Async clinic by by Sergey Teplyakov
Alex Tumanoff
Deep Dive C# by Sergey Teplyakov
Deep Dive  C# by Sergey TeplyakovDeep Dive  C# by Sergey Teplyakov
Deep Dive C# by Sergey Teplyakov
Alex Tumanoff
Haskell
HaskellHaskell
Haskell
DevDay
个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++
个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++
个仆从亳仂仆舒仍仆仂 亟亠从仍舒舒亳于仆亶 亟亳亰舒亶仆 仆舒 C++
Alexander Granin
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
Eugeniy Tyumentcev
丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...
丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...
丐 - 仂亠仆 2014 - 亠从亳 7. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 弍亠亰 弍仍仂从亳仂于仂从. ...
Alexey Paznikov
丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...
丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...
丐 - 仂亠仆 2014 - 亠从亳 4 - 弌舒仆亟舒 POSIX Threads. 亠亠仆亠舒弍亠仍仆仂. 弌亳亞仆...
Alexey Paznikov
舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒
舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒
舒于亠仍 仂于亞舒仍ミ, 弍舒仆舒 仂仍舒亟从舒
Sergey Platonov
丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...
丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...
丐 - 于亠仆舒 2015 - 亠从亳 5. 仆仂亞仂仗仂仂仆仂亠 仗仂亞舒仄仄亳仂于舒仆亳亠 于 弌++. 弌亳仆仂仆亳亰舒...
Alexey Paznikov

Viewers also liked (19)

仂仍舒于 舒弍仂于仂仍ミ
仂仍舒于 舒弍仂于仂仍ミ仂仍舒于 舒弍仂于仂仍ミ
仂仍舒于 舒弍仂于仂仍ミ
kuchinskaya
Smirnov dependency-injection-techforum(1)
Smirnov dependency-injection-techforum(1)Smirnov dependency-injection-techforum(1)
Smirnov dependency-injection-techforum(1)
kuchinskaya
Kalugin balashov
Kalugin balashovKalugin balashov
Kalugin balashov
kuchinskaya
Smirnov reverse-engineering-techforum
Smirnov reverse-engineering-techforumSmirnov reverse-engineering-techforum
Smirnov reverse-engineering-techforum
kuchinskaya
Perepelitsa
PerepelitsaPerepelitsa
Perepelitsa
kuchinskaya

Similar to Zagursky (20)

舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
etyumentcev
Java 8 puzzlers
Java 8 puzzlersJava 8 puzzlers
Java 8 puzzlers
Evgeny Borisov
舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒
舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒
舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒
Andrey Karpov
Reactive extensions
Reactive extensionsReactive extensions
Reactive extensions
Sergey Teplyakov
亳仍仍亠-亳舒 磶从舒 C# 从仂仆从亳 async/await
亳仍仍亠-亳舒 磶从舒 C#  从仂仆从亳 async/await亳仍仍亠-亳舒 磶从舒 C#  从仂仆从亳 async/await
亳仍仍亠-亳舒 磶从舒 C# 从仂仆从亳 async/await
Byndyusoft
2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳
2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳
2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳
仄从亳亠 丐-弍弍仂仆亳从亳
弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir
弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir
弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir
CodeFest
Thread
ThreadThread
Thread
Alexander Rusin
C# Deep Dive
C# Deep DiveC# Deep Dive
C# Deep Dive
LuxoftTraining
Luxoft async.net
Luxoft async.netLuxoft async.net
Luxoft async.net
Sergey Teplyakov
Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...
Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...
Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...
solit
JPoint 2016 - Etudes of DIY Java profiler
JPoint 2016 - Etudes of DIY Java profilerJPoint 2016 - Etudes of DIY Java profiler
JPoint 2016 - Etudes of DIY Java profiler
Anton Arhipov
JavaDay'14
JavaDay'14JavaDay'14
JavaDay'14
Kirill Golodnov
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
etyumentcev
弍亰仂 ES2015(ES6)
弍亰仂 ES2015(ES6)弍亰仂 ES2015(ES6)
弍亰仂 ES2015(ES6)
Alex Filatov
Mike ponomarenko java17-fork-v1.2
Mike ponomarenko java17-fork-v1.2Mike ponomarenko java17-fork-v1.2
Mike ponomarenko java17-fork-v1.2
Alex Tumanoff
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 3
etyumentcev
舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒
舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒
舒亳亠从亳亶 舒仆舒仍亳亰 从仂亟舒
Andrey Karpov
亳仍仍亠-亳舒 磶从舒 C# 从仂仆从亳 async/await
亳仍仍亠-亳舒 磶从舒 C#  从仂仆从亳 async/await亳仍仍亠-亳舒 磶从舒 C#  从仂仆从亳 async/await
亳仍仍亠-亳舒 磶从舒 C# 从仂仆从亳 async/await
Byndyusoft
2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳
2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳
2014-10-04 02 仍舒亟亳仍舒于 亠亰于亠亳亳. Mocha - 仗仂从仂亳 frontend 仗仂 仗仂仍仆仂亳
仄从亳亠 丐-弍弍仂仆亳从亳
弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir
弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir
弌仍舒亟从仂亠 弍亟亠亠: Phalcon 亳 Zephir
CodeFest
Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...
Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...
Solit 2014, 亠舒从亳于仆亶 Javascript. 仂弍亠亟舒 仆舒亟 舒亳仆仂仆仆仂 亳 于仍仂亢亠仆仆仂, ...
solit
JPoint 2016 - Etudes of DIY Java profiler
JPoint 2016 - Etudes of DIY Java profilerJPoint 2016 - Etudes of DIY Java profiler
JPoint 2016 - Etudes of DIY Java profiler
Anton Arhipov
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
舒亰舒弍仂从舒 亠于亠仂于 亳 亠于亠仆 仗亳仍仂亢亠仆亳亶 仍亠从亳 2
etyumentcev
弍亰仂 ES2015(ES6)
弍亰仂 ES2015(ES6)弍亰仂 ES2015(ES6)
弍亰仂 ES2015(ES6)
Alex Filatov
Mike ponomarenko java17-fork-v1.2
Mike ponomarenko java17-fork-v1.2Mike ponomarenko java17-fork-v1.2
Mike ponomarenko java17-fork-v1.2
Alex Tumanoff

More from kuchinskaya (11)

于仍舒亟亳仄亳 亞舒弍亳亠仍礌
于仍舒亟亳仄亳 亞舒弍亳亠仍礌于仍舒亟亳仄亳 亞舒弍亳亠仍礌
于仍舒亟亳仄亳 亞舒弍亳亠仍礌
kuchinskaya
舒从亳仆 亳于舒仆
舒从亳仆 亳于舒仆舒从亳仆 亳于舒仆
舒从亳仆 亳于舒仆
kuchinskaya
仄亳仆 舒仆亟亠亶
仄亳仆 舒仆亟亠亶仄亳仆 舒仆亟亠亶
仄亳仆 舒仆亟亠亶
kuchinskaya
仄亳舒仂于 仂仄舒仆
仄亳舒仂于 仂仄舒仆仄亳舒仂于 仂仄舒仆
仄亳舒仂于 仂仄舒仆
kuchinskaya
从亠仆亳仆 于仍舒亟亳仄亳
从亠仆亳仆 于仍舒亟亳仄亳从亠仆亳仆 于仍舒亟亳仄亳
从亠仆亳仆 于仍舒亟亳仄亳
kuchinskaya
从仂仆舒仆亳仆 仍亠弍亠亟亠于
从仂仆舒仆亳仆 仍亠弍亠亟亠于从仂仆舒仆亳仆 仍亠弍亠亟亠于
从仂仆舒仆亳仆 仍亠弍亠亟亠于
kuchinskaya
亟亟从亳仆 亠亞仂
亟亟从亳仆 亠亞仂亟亟从亳仆 亠亞仂
亟亟从亳仆 亠亞仂
kuchinskaya
亠亞亠亶 仗亳亳亟仂仆仂于
亠亞亠亶 仗亳亳亟仂仆仂于亠亞亠亶 仗亳亳亟仂仆仂于
亠亞亠亶 仗亳亳亟仂仆仂于
kuchinskaya
亳亞仂 亠仄舒从仂于
亳亞仂 亠仄舒从仂于亳亞仂 亠仄舒从仂于
亳亞仂 亠仄舒从仂于
kuchinskaya
亟仄亳亳亶 ミ莞湖3
亟仄亳亳亶 ミ莞湖3亟仄亳亳亶 ミ莞湖3
亟仄亳亳亶 ミ莞湖3
kuchinskaya
于仍舒亟亳仄亳 亞舒弍亳亠仍礌
于仍舒亟亳仄亳 亞舒弍亳亠仍礌于仍舒亟亳仄亳 亞舒弍亳亠仍礌
于仍舒亟亳仄亳 亞舒弍亳亠仍礌
kuchinskaya
舒从亳仆 亳于舒仆
舒从亳仆 亳于舒仆舒从亳仆 亳于舒仆
舒从亳仆 亳于舒仆
kuchinskaya
仄亳仆 舒仆亟亠亶
仄亳仆 舒仆亟亠亶仄亳仆 舒仆亟亠亶
仄亳仆 舒仆亟亠亶
kuchinskaya
仄亳舒仂于 仂仄舒仆
仄亳舒仂于 仂仄舒仆仄亳舒仂于 仂仄舒仆
仄亳舒仂于 仂仄舒仆
kuchinskaya
从亠仆亳仆 于仍舒亟亳仄亳
从亠仆亳仆 于仍舒亟亳仄亳从亠仆亳仆 于仍舒亟亳仄亳
从亠仆亳仆 于仍舒亟亳仄亳
kuchinskaya
从仂仆舒仆亳仆 仍亠弍亠亟亠于
从仂仆舒仆亳仆 仍亠弍亠亟亠于从仂仆舒仆亳仆 仍亠弍亠亟亠于
从仂仆舒仆亳仆 仍亠弍亠亟亠于
kuchinskaya
亟亟从亳仆 亠亞仂
亟亟从亳仆 亠亞仂亟亟从亳仆 亠亞仂
亟亟从亳仆 亠亞仂
kuchinskaya
亠亞亠亶 仗亳亳亟仂仆仂于
亠亞亠亶 仗亳亳亟仂仆仂于亠亞亠亶 仗亳亳亟仂仆仂于
亠亞亠亶 仗亳亳亟仂仆仂于
kuchinskaya
亳亞仂 亠仄舒从仂于
亳亞仂 亠仄舒从仂于亳亞仂 亠仄舒从仂于
亳亞仂 亠仄舒从仂于
kuchinskaya
亟仄亳亳亶 ミ莞湖3
亟仄亳亳亶 ミ莞湖3亟仄亳亳亶 ミ莞湖3
亟仄亳亳亶 ミ莞湖3
kuchinskaya

Zagursky

  • 3. public final class RequestCreateAvatar { private final String avatarName; } S private final Character character; R void createAvatar(String avatarName, Character character) { MsgRequest sendCmd(new RequestCreateAvatar(avatarName, character)); Async<Void> createAvatar(String avatarName, Character character) { } CreateAvatarResult result = call(avatarManager.createAvatar( avatarName, characterfinal class CreateAvatarHandler { public )); RequestHandler() public void handle(RequestCreateAvatar msg) { sendMsgToClient(result); CreateAvatarResult result = avatarManager.createAvatar(msg); sendMsg(new ResponseCreateAvatar(result)); MsgResponse return nothing(); } } } public final class CreateAvatarResponseHandler { public void handle(ResponseCreateAvatar msg) { sendMsgToClient(msg); ResponseHandler() } }
  • 5. 亳亳仆 丱仂亠 仗亳舒 仗仂仂亶 仍亳仆亠亶仆亶 Java-从仂亟 弌-仗仂仂从亳 仍亳从仂仄 仆舒从仍舒亟仆 丐亠弍亠 仂舒仆亳 仂亟仆仂仗仂仂仆亶 亟亳亰舒亶仆
  • 6. 弌 于仂 仗亳亠亞仂 仗仂仍舒 仆仄亠仆舒仂 仍舒仆亳仂于亳从 舒仆舒亶仄 仆仗亠从亳亳
  • 7. 弌亳仆舒从亳 (1) import fibers.Async; import static fibers.Fiber.*; Async<Integer>{ calcResult(int factor) { class Foo Async<Integer> calcResult(int factor) { return result(42*factor); return result(42*factor); Async<Integer> doWork() { } } int tmp Async<Integer> doWork() { = all(calcResult(314)); int tmp = call(calcResult(314)); return result(tmp); return result(tmp); } } }
  • 8. 弌亳仆舒从亳 (2) class Foo { void bar(FiberManager f) { f.scheduleFiber(doWork("Hi!")); } }
  • 9. 亠仗舒亳亠仄亶 仄亠仂亟 Async<String> baz(String second) { String first = call(getFirst()); return result(join(first, second)); }
  • 10. 舒仄亠仆舒 亳仂亟仆仂亞仂 仄亠仂亟舒 Async<String> baz(String second) { return new baz_Context(second); }
  • 11. 仂仆亠从 于亰仂于舒 仄亠仂亟舒 class baz_Context extends Async<String> { String _second, first; @Override void update() { state = baz_Async(this); } }
  • 12. 仆仄亠仆亳仂于舒仆仆亶 仄亠仂亟 int baz_Async(baz_Context c) { switch (c.state) { case 0: c.result = getFirst(); return 1; case 1: c.first = (String) c.takeResult(); c.result = join(c.first, c._second); return -1; } }
  • 13. 仆仄亠仆亳仂于舒仆亳亠 (1) 仂亳从 仂亠从 舒亰于舒 call yield 舒于从舒 switch-case 亳 return
  • 14. 仆仄亠仆亳仂于舒仆亳亠 (2) 舒从 仂弍仂亶亳 于亰仂于 Async<Integer> foo() { 弍仍仂从舒 finally? try { int t = call(bar()); 亠 于亰于舒 亠亞仂! return result(t); } finally { close(); } }
  • 15. 仆仄亠仆亳仂于舒仆亳亠 (3) 仂亟仄亠仆舒 亟仂仗舒 从 仗舒舒仄亠舒仄 仄亠仂亟舒 亳 仍仂从舒仍仆仄 仗亠亠仄亠仆仆仄 int x; x = 42; context.x = 42;
  • 16. 仆仄亠仆亳仂于舒仆亳亠 (4) ... case 42 ... Context r = new bar_Context(); x = call(bar()); c.pushCall(r); ... return 43; case 43: c.x = (String) c.takeResult(); ...
  • 17. 仆仄亠仆亳仂于舒仆亳亠 (5) 亳亠从亳于, 仍舒ム亳亠 仆舒 亳仂亟仆亶 舒亶仍, 于舒于仍ム 亳仆仄亠仆舒仂仂仄 于 亞亠仆亠亳仂于舒仆仆亶 仄亠仂亟 亅仂 仗仂亰于仂仍磳 亳仗仂仍亰仂于舒 仗仂舒亞仂于 仂仍舒亟从 亞舒仆亳亠仆亳亠: 仆亠仍亰 仗仂仄仂 Step Over 仗亠亠亶亳 亠亠亰 仂从 舒亰于舒
  • 18. 从仍ム亠仆亳 舒仆舒亶仄 仍仂于亳 于亠 亳从仍ム亠仆亳, 于仍亠亠于亳亠 亳亰 Async-仄亠仂亟舒 从仍ム亠仆亳亠 亰舒于仂舒亳于舒亠 于 仍亢亠弍仆亶 仂弍亠从 亳 亰舒仗仂亠 亠亰仍舒舒 于亰于舒ム亳仄 Async- 仄亠仂亟仂仄 亳从仍ム亠仆亳亠 于弍舒于舒亠 亰舒仆仂于仂 仍亳 亳从仍ム亠仆亳亠 于仍亠舒亠 亰舒 仗亠亟亠仍 舒亶弍亠舒, 仂 仂 亟亳舒亞仆仂亳亠 从舒从 仂亳弍从舒
  • 19. 亠于舒仆亳亠 舒亶弍亠舒 从舒亢亟仂亶 仂从亠 于仂亟舒 于 Async-仄亠仂亟 仗仂于亠磳, 仆亠 弍仍 仍亳 仗亠于舒仆 亠从亳亶 舒亶弍亠 仍亳 舒亶弍亠 弍仍 仗亠于舒仆, 仂 于弍舒于舒亠 仍亢亠弍仆仂亠 亳从仍ム亠仆亳亠 FiberInterruptedException
  • 20. 个仆从亳亳 FiberManager 仍舒仆亳仂于亳从 弍舒弍舒于舒亠 仗亳仂舒仆仂于从, 于仂亰仂弍仆仂于仍亠仆亳亠 亳 仗亠于舒仆亳亠 舒亶弍亠仂于 丕 于亠 舒亶弍亠仂于 仂亟亳仆舒从仂于亶 仗亳仂亳亠
  • 21. 舒舒仆亳亳 FiberManager 个舒亶弍亠 亟仂仍亢仆 亳仗仂仍仆 于 仗仂磲从亠 亟仂弍舒于仍亠仆亳 亳 于仂亰仂弍仆仂于仍亠仆亳 亳仂舒仆仂于仍亠仆仆亠 舒亶弍亠 仆亠 亟仂仍亢仆 亳仗仂仍仆
  • 22. Thread safety 亠仂亟 scheduleFiber() 亳 resumeFiber() 仄仂亞 于仗仂仍仆 亳亰 仍ミ頴笑覚 仗仂仂从舒 亠 仂舒仍仆亠 仄亠仂亟 仂仍从仂 亳亰 仗仂仂从舒, 从 从仂仂仂仄 仗亳于磶舒仆 仗仍舒仆亳仂于亳从 舒 从舒亢亟亶 仗仂仂从 亠 于仂亶 仗仍舒仆亳仂于亳从
  • 23. StackTrace (1) Stack trace 亳亰 new Throwable().getStackTrace() 仆亠 亟仂舒仂亠仆 仂亞舒仄仄亳 仂亠 于亳亟亠: 亠从 Async-仄亠仂亟仂于 亠从 于 仄仂仄亠仆 仗仂仂亢亟亠仆亳 舒亶弍亠舒 个舒亶弍亠 仄仂亢亠 弍 仂亰亟舒仆 于仆亳 亟亞仂亞仂 舒亶弍亠舒 Stack trace 亟仂仍亢亠仆 舒亰亠舒 (resolve) 仂仍从仂 仂亞亟舒, 从仂亞亟舒 仂仆 亠舒仍仆仂 仆亠仂弍仂亟亳仄
  • 24. StackTrace (2) 舒仆舒亶仄 仗仂仍舒亠 亢亠 亞仂仂于仂亠 亳从仍ム亠仆亳亠 仂仄 亳从仍ム亠仆亳 仆亢仆仂 亟仂弍舒于亳 亠从 舒亶弍亠舒 亠从 仄仂仄亠仆舒 仗仂仂亢亟亠仆亳 舒亶弍亠舒 仗仂仍亰亠 addSuppressed()
  • 25. StackTrace (3) 亠亠仂仗亠亟亠仍磳 仄亠仂亟 fillInStackTrace(), 仂弍 仆亠 仂弍亳舒 仂弍仆亶 stack trace 舒亳于 StackTraceElement[] 仂仄亳亠 仂仍从仂 仗仂 亰舒仗仂 getCause() 亳 仗亳 亠亳舒仍亳亰舒亳亳
  • 26. java.lang.Throwable at asserts.Verify.fail(Verify.java:47) at gm.cc.c.t.CmdTeleportRandomByMapType.asyncRun$Async(CmdTeleportRandomByMapType.jav at gm.cc.c.t.CmdTeleportRandomByMapType$Context_asyncRun_LmsgSystem#locales#Abonent_. at f.i.AsyncImpl.updateSafe(AsyncImpl.java:37) at f.i.FiberImpl.updateInternal(FiberImpl.java:154) at f.i.FiberImpl.update(FiberImpl.java:130) at f.i.FiberManagerAbstract.updateFiber(FiberManagerAbstract.java:297) ... at java.lang.Thread.run(Thread.java:722) Suppressed: f.i.FiberStackTraceHolderException: Fiber stack trace Caused by: f.i.FiberStackTraceHolderException$Helper at asserts.Verify.fail(Verify.java:47) at gm.cc.c.t.CmdTeleportRandomByMapType.asyncRun(CmdTeleportRandomByMapType.java at ms.l.AsyncMsg.run(AsyncMsg.java:37) at ms.i.mp.ServerMsgPublisher.processMsg(ServerMsgPublisher.java:331) at ms.i.mp.ServerMsgPublisher.addMsgFast(ServerMsgPublisher.java:118) ... at java.lang.Thread.run(Thread.java:722)
  • 27. 丕亰从亳亠 仄亠舒 (1) 仆仄亠仆舒仂 仄亠仆磳 亳亞仆舒 仄亠仂亟舒 弌仍亢亠弍仆亠 仄亠仂亟 call() 亳 result() 于亠亰舒ム, 仂弍 弍舒亶从仂亟 仂仂于亠于仂于舒仍 仆仂于仂亶 亳亞仆舒亠 弍 仂仄 仆亠 亟仂亞舒亟于舒亠 IntelliJ Idea, 从仂仂舒 于舒于仍磳 仗仂于亠从亳 仆舒 != null 仆仄亠仆舒仂 于亠亰舒亠 舒从亳亠 仗仂于亠从亳 亳亰 Async-仄亠仂亟仂于
  • 28. 丕亰从亳亠 仄亠舒 (2) 仍亳 Async-仄亠仂亟 亟亠从仍舒亳亠 throws SomeUncheckedException 亳仆舒从亳 java 仗仂亠弍亠 亠亞仂 仂弍舒弍仂从亳 catch-弍仍仂从 亟仍 仂亞仂 亳从仍ム亠仆亳 仆亳从仂亞亟舒 仆亠 弍亟亠 于亰于舒仆 亳从仍ム亠仆亳亠 仗仂仍亠亳 于 舒仆舒亶仄, . 从. 亟仍 仆亠亞仂 仆亠 仂仂于亠于ム亠亞仂 catch
  • 29. 丕亰从亳亠 仄亠舒 (3) 弌亳仆舒从亳 仆亠 亰舒仗亠舒亠 于亰仂于 Async- 仄亠仂亟舒 亳亰 仂弍仆仂亞仂 亰于舒亠仄亶 仄亠仂亟 仆亠 亳仗仂仍仆亳
  • 30. 丕亰从亳亠 仄亠舒 (4) 丐仂从亳 舒亰于舒 仆亠 仄仂亞 弍 于 弍仍仂从亠 finally 亳亳仆舒: 于 仂仄 仍舒亠 亳从仍ム亠仆亳亠 仄仂亢亠 弍 仗仂亳亞仆仂亳仂于舒仆仂
  • 31. 仍亠仆舒亳于仆亠 亠亠仆亳 Apache Javaflow DaVinci VM Kilim
  • 32. 弌 亠 亞亠 亶 舒 亞 从 亳 亶 于 亠 亟 亳 亶 仗 仂 亞 舒 仄 仄 亳 , 仗 仂 亠 从 S k y f o r g e s.zagurskiy@corp.mail.ru