はじめに Goで外部へhttpリクエストを行う際には、多くの場合でnet/httpを利用すると思います。 net/httpには通常利用する分には必要な機能が備わっていますが、独自に拡張して使いたい場合はhttp.RoundTripperというインターフェースを利用できます。 利用方法の解説としては、こちらの「Go http.RoundTripper 実装ガイド」という記事に詳細に解説がありましたので参考にさせて頂き、 今回はより具体的な利用例にフォーカスして実装例を交えて紹介したいと思います。 やりたいこと 素のnet/httpではリクエストがエラーになった際のリトライや、秒間リクエストの最大値を制限するようなレート制御の機能はありません。 なので今回は、 リトライ処理 レート制御 この2つをhttp.RoundTripperを使って拡張実装したいと思います。 ※今回のサンプルコードの完成
この文章は VRChat において,いわゆる「クラブワールド」を制作している,またはしようとしているワールド制作者を対象として,その設計思想を私なりに解説するものである. 私が制作・運営するVRクラブである Club: The Underground(以下「地下」)を楽しむために,この文章を読む必要はない.また VRDJ を対象とした文章でもないが,そちらについては参考になる点もあるかもしれない. この文章を執筆している現在(2023年11月)は私が地下4.0を公開した直後で,このタイミングで一旦自分の設計思想を整理・言語化しておくべきであろうと考えたのが執筆理由である.また,この文章が他のクラブワールド制作者(私の友人を念頭に置いて書いているがそれに限らない)の一助になればよいと思ったのが公開理由である. なおワールド制作者向けという性質上,ワールド制作で用いるであろう一定の知識は仮定し
記事が増えてきたので、まとめと宣伝も兼ねてリンク集として作りました。レベル別のリンクと、言語・植物・道路番号などのトピック別でまとめました。 さらなる参考: sp4ghet, "リージョンゲス・メタに関するサーベイ" 第二回GeoGuessrピンポイント学会, 2024年1月8日. 単体での動画アーカイブはまだですが、GeoGuessrメタの勉強法・探し方に関する講義をしてくださいました。 <初心者から上級者まで誰でも>GeoGuessr Japan Wiki https://wikiwiki.jp/geoguessr/ 待望の新設・GeoGuessr攻略日本wikiです。まだ発展途上です。自分も微力ながらお手伝いしてます。あんまりお手伝いできてません。 Plonk It Guide: 国別の解説。難易度・重要度順に初心者の国判別向けから道路一発特定まで、初心者向け国当て情報からガチ勢向け
プログラミング言語を自前で創っていると,パッケージマネージャが欲しくなってくるものだ.既存パッケージマネージャやそのラッパーによる配布で事足りることも多いが,自前言語の要件とうまく合わなかったりして,真に自分で実装せねばならないこともある.そうした場合,パッケージマネージャをどんな設計にすべきだろうか? 言語固有の都合には触れずになるべく一般に考慮すべき事項を洗い出し,簡単な設計例も提示してみたい. なお,本稿はパッケージマネージャの設計に焦点を当てたものであり,効率的に依存制約を解消するアルゴリズムなど実装の詳細については解説しない.実際例えばOCamlでは 0install-solver というOPAMの裏でも使われているパッケージを利用すれば制約解消アルゴリズムそのものに踏み込まずとも制約解消処理を実装でき,(それ自体に興味があるときを除けば)必ずしもアルゴリズムを理解する必要はない
安全性、速度、並行性の3つのゴールにフォーカスしたシステムプログラミング言語Rust1でDirectX陣営のLow-overhead APIとして新たに(けっこう前に)策定されたDirectX12を動かします。(とりあえずメモ的な) Rustはまだまだ初心者なので間違ってたりもっとよくできたりする点があるかもしれませんが暖かい目で見てやってください。 環境 rustcはバージョン1.9.0を使用します。あと、たぶんWindows SDKが入ってるなら入ってると思いますがDebugging Tools for Windows(windbg)も入れておきましょう。D言語を一緒に入れてる人はパスの関係でコマンドラインでwindbgを起動するとD言語付属のやつが起動してしまうかもしれないのでファイル名を変えておくといいと思います。 追記: rustcはMSVC ABIのほうを使用すると安心かと思い
サイクリングのルート作成の定番である「ルートラボ」がサービスを終了します(2020年3月末)。 グループライドする時の情報共有はこのルートラボに頼り切りだったので無くなると困ってしまうんです。 サイクリングの場合、サイクリングロードや車の少ない道、寄りたい観光地など自分で決めたルートをナビに示させる必要があります。 だから単に目的地までのルートを示すだけのナビソフトではダメなんです。 今まではルートラボで引いたルートを「ルートラボビューワ」というアプリを使って、スマホにナビをさせていました。 そんな「ルートラボ」の代替として以下のサイトを試してみました。 youhei2018.hatenablog.com youhei2018.hatenablog.com これらのサイトを使えばルートを作成でき、etrexにルートを転送して道案内ができます。 ただし、グループ内でetrexを使っているのは
Feb 6, 2021 If you maintain an open-source project in the range of 10k-200k lines of code, I strongly encourage you to add an ARCHITECTURE document next to README and CONTRIBUTING. Before going into the details of why and how, I want to emphasize that this is not another “docs are good, write more docs” advice. I am pretty sloppy about documentation, and, e.g., I often use just “simplify” as a com
unresolved external symbol 'symbol' referenced in function 'function' The compiled code for function makes a reference or call to symbol, but the linker can't find the symbol definition in any of the libraries or object files. This error message is followed by fatal error LNK1120. To fix error LNK1120, you must fix all LNK2001 and LNK2019 errors first. Possible causes There are many ways to get th
This article is from June 2020, some of its contents might be outdated and no longer accurate. You can find up-to-date information about the engine in the official documentation. As work progresses on Godot 4.0 at a steady pace, a new and novel method of creating full-scene global illumination has been added in the master branch. SDFGISDFGI stands for Signed Distance Field Global Illumination. It
In each release of our SDK you will find numerous code samples, complete with carefully commented source code, whitepapers, and videos to help you take advantage of the latest technology from NVIDIA. This code is released free of charge for use in derivative works, whether academic, commercial, or personal (Full License). DirectX SDK (April 2007) is required to compile some code samples. Please ob
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く