本文譯自 Julio Merino 2018 年七月撰寫的 Rust vs. Go 一文。Julio Merino 是 G 社僱員,在 G 社工作超過 8 年,無論工作內外,都接觸開發不少 Go 語言,並撰寫 [Rust 點評][rust-review]系列文,來聽聽他對 Rust 與 Go 的想法吧。
Thanks Julio Merino for this awesome article!
# /etc/systemd/system/[email protected] | |
[Unit] | |
Description=GO Simple Tunnel | |
After=network.target | |
[Service] | |
Type=simple | |
LimitNOFILE=1048576 | |
Restart=always |
#ifndef MACWINDOW_H | |
#define MACWINDOW_H | |
#include <QObject> | |
class MacWindow : public QObject | |
{ | |
Q_OBJECT | |
public: |
Libuv and libev, two I/O libraries with similar names, recently had the privilege to use both libraries to write something. Now let's talk about my own subjective expression of common and different points.
The topic of high-performance network programming has been discussed. Asynchronous, asynchronous, or asynchronous. Whether it is epoll or kqueue, it is always indispensable to the asynchronous topic.
Libuv is asynchronous, and libev is synchronous multiplexing IO multiplexing.
Libev is a simple encapsulation of system I/O reuse. Basically, it solves the problem of different APIs between epoll and kqueuq. Ensure that programs written using livev's API can run on most *nix platforms. However, the disadvantages of libev are also obvious. Because it basically just encapsulates the Event Library, it is inconvenient to use. For example, accept(3) requires manual setnonblocking after connection. EAGAIN, EWOULDBLOCK, and EINTER need to be detected when reading from a socket. This is a
#!/usr/bin/sudo ruby | |
# | |
# revealer.rb -- Deobfuscate GHE .rb files. | |
# | |
# This is simple: | |
# Every obfuscated file in the GHE VM contains the following code: | |
# | |
# > require "ruby_concealer.so" | |
# > __ruby_concealer__ "..." |
# _______ __ __ _______ ______ _______ _______ _______ ______ # | |
#| || | | || || | | _ || || || | # | |
#| _ || | | ||_ _|| _ || |_| ||_ _|| ___|| _ |# | |
#| | | || |_| | | | | | | || | | | | |___ | | | |# | |
#| |_| || | | | | |_| || | | | | ___|| |_| |# | |
#| || | | | | || _ | | | | |___ | |# | |
#|_______||_______| |___| |______| |__| |__| |___| |_______||______| # | |
# # | |
# Modern CMake practices and importing the QT scripts by adding it to # | |
# your module path makes things a lot better than it used to be # |
verified和verified_type是微博api返回结果的字段,例如以下api的返回结果
verified_type: -1/200/220/400