タグ

ブックマーク / ja.wikipedia.org (4)

  • スレッドセーフ - Wikipedia

    スレッドセーフ(英: thread-safe)は、マルチスレッドプログラミングにおける概念である。あるプログラムコードがスレッドセーフであるという場合、そのコードを複数のスレッドが同時並行的に実行しても問題が発生しないことを意味する[1]。特に、ある共有データへの複数のスレッドによる読み書きアクセスがあるとき、一度に1つのスレッドのみがその共有データにアクセスするようにして安全性を確保しなければならない。スレッドセーフでないコードを同時並行的に実行すると、データ競合による未定義動作を引き起こしたり、競合状態(レースコンディション)による意図しない動作を引き起こしたりする。場合によっては深刻なセキュリティホール(脆弱性)が引き起こされることもある[2]。 スレッドセーフはマルチスレッドプログラミングにおける重要な要素である。それは従来、オペレーティングシステムの開発者だけが考慮しなければなら

  • イミュータブル - Wikipedia

    コンピュータプログラミングにおいて、イミュータブル (英: immutable) なオブジェクトとは、作成後にその状態を変えることのできないオブジェクトのことである。対義語はミュータブル (英: mutable) なオブジェクトで、作成後も状態を変えることができる。mutableは「変更可能な」、immutableは「変更不可能な、不変の」という意味を持つ形容詞である。 あるオブジェクト全体がイミュータブルなこともあるし、C++でconstデータメンバを使う場合など、一部の属性のみがイミュータブルなこともある。場合によっては、内部で使われている属性が変化しても、外部からオブジェクトの状態が変化していないように見えるならば、オブジェクトをイミュータブルとみなすことがある。例えば、コストの高い計算の結果をキャッシュするためにメモ化を利用していても、そのオブジェクトは依然イミュータブルとみなせる

  • StringBufferとStringBuilder - Wikipedia

    StringBuffer クラスはJavaにある二つの中核となる文字列クラスのひとつである。多くの場合、Stringクラスが使われるが、StringBuffer クラスはミュータブルオブジェクトであり、一方 String クラスは イミュータブルである。 つまり StringBuffer オブジェクトは更新されうるが、String クラスでは似たようなメソッドが新たにStringオブジェクトを生成しメソッドの戻り値としてreturnされた文字列の内容が変更されることで実現される。多くのString オブジェクトを生成しては捨てていく処理の替わりにStringBufferを使った方がより効率的である。 StringBuilder クラスは、同期を考慮しないことがStringBufferとは異なる点であり、これはJ2SE 5.0で導入された。オブジェクトにアクセスするシングルスレッドのときだけ

  • Domain Name System - Wikipedia

    ドメインの階層構造 Domain Name System(ドメイン・ネーム・システム、DNS)とは、コンピュータネットワーク上のホスト名や電子メールのアドレスに使われるドメイン名と、IPアドレスとの対応づけ(正引き、逆引き)を管理するために使用されているシステムである。後述の通りインターネットのシステムとして開発されているが、インターネットに限定したシステムではなく、それ以外のネットワークでも応用できる。 1983年に、インターネットを使った階層的な分散型データベースシステムとして、Information Sciences Institute(ISI)のポール・モカペトリスとジョン・ポステルにより開発された[1]。 インターネットに接続されているすべてのコンピュータは、固有のIPアドレスを持っている。インターネット上のコンピュータにアクセスするためには、そのコンピュータの IPアドレスを知

    Domain Name System - Wikipedia
  • 1