<html>
  <head>
    <meta content="text/html; charset=koi8-r" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">10.02.2015 10:41, Alex Chistyakov
      пишет:<br>
    </div>
    <blockquote
cite="mid:CA+kq2xu4_xfuCOExbxXwADyHrEqSiCxOA2oaecnknuuCV9TWTQ@mail.gmail.com"
      type="cite">
      <pre wrap="">
Это утверждение вопиюще неверно.
</pre>
      <blockquote type="cite">
        <pre wrap="">

Ага так и поверил, где аргументы? И что собственно неверно?
</pre>
      </blockquote>
      <pre wrap="">
Значит, вот как мы теперь будем делать: один из нас напишет лютую
чушь, а второй ему на это укажет, первый попросит у второго аргументы.
То есть, чушь нести будет можно без аргументов - ну, это прекрасно же.
</pre>
    </blockquote>
    Ну прекрасно  на вопрос "О чем это вы?" Вы говорите "А что вы вообще
    себе позволяете!!!"<br>
    Вот и прекрасно поговорили.<br>
    <br>
    <blockquote
cite="mid:CA+kq2xu4_xfuCOExbxXwADyHrEqSiCxOA2oaecnknuuCV9TWTQ@mail.gmail.com"
      type="cite">
      <pre wrap="">
</pre>
      <blockquote type="cite">
        <pre wrap="">
</pre>
        Во первых не все, и не всегда. Можно пользоваться redis и
        memcached и не
        думать о базах данных.
      </blockquote>
      <pre wrap="">
А у memcached внутри не MVCC? O_O</pre>
    </blockquote>
    <br>
    Скорее всего нет. <br>
    <br>
    MVCC(MultiVersion <b>Concurrency</b> <b>Control) </b> это
    относится к базам данных и то не ко всем.<br>
    И к сожалению к языкам программирования к async,threads, сустемному
    программированию не относиться ни одним боком. <br>
    То написано ниже --- не понятно зачем это было написано, и к теме
    вообще не относиться.<br>
    <br>
    <br>
    <br>
    <blockquote
cite="mid:CA+kq2xu4_xfuCOExbxXwADyHrEqSiCxOA2oaecnknuuCV9TWTQ@mail.gmail.com"
      type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">А иногда бывает полезно иметь общий пул данных
</pre>
        <blockquote type="cite">
          <pre wrap="">
Так вот, те, кто работают с базами данных, знают слова вроде
"оптимистичная блокировка", "MVCC".
Есть еще такая вещь, как STM.
</pre>
        </blockquote>
        <pre wrap="">
Опять не все, и не всегда.
</pre>
      </blockquote>
      <pre wrap="">
Да я уже понял, что не все и не всегда.

</pre>
      <blockquote type="cite">
        <pre wrap="">Даже если блокировка самая быстрая, это не значит что на неё не используются
ресурсы процессора вообще.
</pre>
      </blockquote>
      <pre wrap="">
Где я это утверждал?

</pre>
      <blockquote type="cite">
        <pre wrap="">А поход в базу данных это совсем не дешевая альтернатива.
</pre>
      </blockquote>
      <pre wrap="">
Где я говорил, что это альтернатива?

</pre>
      <blockquote type="cite">
        <pre wrap="">
</pre>
        <blockquote type="cite">
          <pre wrap="">
</pre>
          <blockquote type="cite">
            <pre wrap="">100-200 циклов процессора минимум на одном примитиве.
</pre>
          </blockquote>
          <pre wrap="">
compare-and-swap это 100-200 циклов процессора минимум?
Но на что? O_O
</pre>
        </blockquote>
        <pre wrap="">
А вы читали Intel Design Manual для IE-32 и IE-64?
</pre>
      </blockquote>
      <pre wrap="">
А Вы читали Orange Book?

</pre>
      <blockquote type="cite">
        <pre wrap="">А про POSIX ? А про
примитивы синхронизации, как они устроены?
</pre>
      </blockquote>
      <pre wrap="">
Да не - ну куда мне?

</pre>
      <blockquote type="cite">
        <pre wrap="">А про spin lock, что вам известно?
</pre>
      </blockquote>
      <pre wrap="">
А какая связь между spinlock и CAS?

</pre>
      <blockquote type="cite">
        <pre wrap="">Почитайте, погуглите.
Может оказаться, что на CAS 100-200 циклов и уходит.
</pre>
      </blockquote>
      <pre wrap="">
Мне интересно другое - с чего Вы вообще про эти 100-200 циклов речь завели?
У Вас что, профайлер в это место в коде показал, или что?
Или Вам жалко эти 100-200 циклов?
Ну вот же все на поверхности лежит:
<a class="moz-txt-link-freetext" href="http://stackoverflow.com/questions/2972389/why-is-compareandswap-instruction-considered-expensive">http://stackoverflow.com/questions/2972389/why-is-compareandswap-instruction-considered-expensive</a>
Какие спинлоки, какой позикс, какой интел дизайн?
Где факты, где основания, где показания профайлера?
А то то, что для одного expensive, для другого может быть не expensive
- тут вон учаснеги на динамически типизированном языке годами пишут, и
норм им.

</pre>
      <blockquote type="cite">
        <pre wrap="">А одной блокировкой как правило, дело обычно не заканчивается.


</pre>
        <blockquote type="cite">
          <pre wrap="">
--
SY,
Alex


</pre>
          <blockquote type="cite">
            <pre wrap="">Слегка не в тему, но для полноты
5) forkи  проще концептуально и приводят к меньшему количеству ошибок в
программировании, значит отлаживать будет меньше.




--
Moscow.pm mailing list
<a class="moz-txt-link-abbreviated" href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a class="moz-txt-link-freetext" href="http://moscow.pm.org">http://moscow.pm.org</a>
</pre>
          </blockquote>
        </blockquote>
        <pre wrap="">

--
Moscow.pm mailing list
<a class="moz-txt-link-abbreviated" href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a class="moz-txt-link-freetext" href="http://moscow.pm.org">http://moscow.pm.org</a>
</pre>
      </blockquote>
    </blockquote>
    <br>
  </body>
</html>