Для получения полного доступа
зарегистрируйтесь.

Раздел:
Подраздел:
Языки:


Gravatar image
tetraset
  • Репутация: 6
  • Сниппеты: 3
  • Ревизии: 0
SET foreign_key_checks = 0;
TRUNCATE TABLE users;
SET foreign_key_checks = 1;
Gravatar image
Artem Iljin
  • Репутация: 1
  • Сниппеты: 0
  • Ревизии: 1
  public class PropertyStore
  {
      private readonly ConcurrentDictionary<string, object> _dictionary = new ConcurrentDictionary<string, object>();
      public T Get<T>(Func<T> instanceCreator, [CallerMemberName] string propertyName = "")
      {
          _dictionary.GetOrAdd(propertyName, key => instanceCreator());
          return (T)_dictionary[propertyName];
      }

      public void Set<T>(T value, [CallerMemberName] string propertyName = "")
      {
          _dictionary.Adate(propertyName, value, (key, oldValue) => value);
      }
  }

Использование:

  public class MyClass
  {
      private readonly PropertyStore _store = new PropertyStore();

      public string MyString
      {
          get => _store.Get(() => "It's my default string");
          set => _store.Set(value);
      }

      public int MyInt
      {
          get => _store.Get(() => 5);
          set => _store.Set(value);
      }

      public SecondClass MySecondClass
      {
          get => _store.Get(() => new SecondClass());
          set => _store.Set(value);
      }
  }

Проверка:

  class Program
  {
      static void Main(string[] args)
      {
          var myClass = new MyClass();

          Console.WriteLine(myClass.MyString); //"It's my default string"
          myClass.MyString = "Custom string";
          Console.WriteLine(myClass.MyString); //Custom string

          Console.WriteLine(myClass.MyInt); //5
          myClass.MyInt = 10;
          Console.WriteLine(myClass.MyInt); //10

          Console.WriteLine(myClass.MySecondClass); //SecondClass Initialized
                                                    //SecondClass

          Console.WriteLine(myClass.MySecondClass); //SecondClass
      }
  }

  public class SecondClass
  {
      public SecondClass()
      {
          Console.WriteLine($"{nameof(SecondClass)} Initialized");
      }

      public override string ToString()
      {
          return nameof(SecondClass);
      }
  }
Gravatar image
Борис Вандышев
  • Репутация: 3
  • Сниппеты: 2
  • Ревизии: 0
  public class PropertyStore
  {
      private readonly ConcurrentDictionary<string, object> _dictionary = new ConcurrentDictionary<string, object>();
      public T Get<T>(Func<T> instanceCreator, [CallerMemberName] string propertyName = "")
      {
          _dictionary.GetOrAdd(propertyName, key => instanceCreator());
          return (T)_dictionary[propertyName];
      }

      public void Set<T>(T value, [CallerMemberName] string propertyName = "")
      {
          _dictionary.AddOrUpdate(propertyName, value, (key, oldValue) => value);
      }
  }

Использование:

  public class MyClass
  {
      private readonly PropertyStore _store = new PropertyStore();

      public string MyString
      {
          get => _store.Get(() => "It's my default string");
          set => _store.Set(value);
      }

      public int MyInt
      {
          get => _store.Get(() => 5);
          set => _store.Set(value);
      }

      public SecondClass MySecondClass
      {
          get => _store.Get(() => new SecondClass());
          set => _store.Set(value);
      }
  }

Проверка:

  class Program
  {
      static void Main(string[] args)
      {
          var myClass = new MyClass();

          Console.WriteLine(myClass.MyString); //"It's my default string"
          myClass.MyString = "Custom string";
          Console.WriteLine(myClass.MyString); //Custom string

          Console.WriteLine(myClass.MyInt); //5
          myClass.MyInt = 10;
          Console.WriteLine(myClass.MyInt); //10

          Console.WriteLine(myClass.MySecondClass); //SecondClass Initialized
                                                    //SecondClass

          Console.WriteLine(myClass.MySecondClass); //SecondClass
      }
  }

  public class SecondClass
  {
      public SecondClass()
      {
          Console.WriteLine($"{nameof(SecondClass)} Initialized");
      }

      public override string ToString()
      {
          return nameof(SecondClass);
      }
  }
Just a cat
  • Репутация: 62
  • Сниппеты: 15
  • Ревизии: 0
sudo mysqlbinlog -v --start-position={START_POS} --base64-output=DECODE-ROWS {FULL_PATH_TO_BINLOG_RELAYLOG_FILE} > {FULL_PATH_TO_DECODED_FILE}

Далее можно открыть DECODED_FILE через vim:

  1. :set hlsearch - включаем подстветку результатов поиска
  2. /# at - по такому паттерну перемещаемся между statements
  3. n - следующее совпадение; N - предыдущее совпадение
Gravatar image
Hector68
  • Репутация: 2
  • Сниппеты: 1
  • Ревизии: 0

Актуально, в частности для работы над Magento

 git log
 ....
 git archive -o ../latest.zip some-commit $(git diff --name-only earlier-commit some-commit)
FullZero
  • Репутация: 7
  • Сниппеты: 6
  • Ревизии: 0
const randomColor = () => {
  return `#${((1<<24)*Math.random()|0).toString(16)}`;
}
console.log(randomColor());
Сниппет,  Bash

Enable Docker Remote API

alex912004
  • Репутация: 8
  • Сниппеты: 3
  • Ревизии: 0

Открываем конфиг, редактируем параметры запуска демона, перезапускаем сервис

vi /etc/init/docker.conf 
> DOCKER_OPTS='-H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock'
service docker restart

При запуске через systemctl:

vi /lib/systemd/system/docker.service
> ExecStart=/usr/bin/dockerd daemon -H fd:// -H tcp://0.0.0.0:2373
systemctl daemon-reload
Just a cat
  • Репутация: 62
  • Сниппеты: 15
  • Ревизии: 0

CPU:

lscpu

Memory:

less /proc/meminfo

Hard Drive:

sudo fdisk -l | grep Disk

Network:

ifconfig -a
ethtool {interface name} | grep -i speed
Just a cat
  • Репутация: 62
  • Сниппеты: 15
  • Ревизии: 0
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY `TIME` DESC;
dignityinside
  • Репутация: 26
  • Сниппеты: 21
  • Ревизии: 1

Проверяем установленую версию:

git --version
git version 1.7.12.4 (Apple Git-37)

Устанавливаем git с помощью brew:

brew install git

Добавляем в ~/.bash_profile новую строчку:

export PATH="/usr/local/bin:$PATH"

Применяем изменения:

source .bash_profile

Проверяем версию:

git --version
git version 2.11.1