提供: Minecraft Modding Wiki
この編集を取り消せます。
下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
49行目: | 49行目: | ||
package mods.sample.peripheral; | package mods.sample.peripheral; | ||
− | |||
import java.util.HashSet; | import java.util.HashSet; | ||
− | |||
import java.util.Set; | import java.util.Set; | ||
108行目: | 106行目: | ||
public void click() { | public void click() { | ||
− | + | synchronized (this) { | |
− | |||
− | |||
− | |||
− | |||
− | synchronized(this) { | ||
for (IComputerAccess computer : m_computers) { | for (IComputerAccess computer : m_computers) { | ||
computer.queueEvent("sample_click", | computer.queueEvent("sample_click", | ||
− | + | new Object[] {computer.getAttachmentName()}); | |
} | } | ||
} | } | ||
178行目: | 171行目: | ||
<source lang = "java"> | <source lang = "java"> | ||
public void click() { | public void click() { | ||
− | + | synchronized (this) { | |
− | |||
− | |||
− | |||
− | |||
− | synchronized(this) { | ||
for (IComputerAccess computer : m_computers) { | for (IComputerAccess computer : m_computers) { | ||
− | computer.queueEvent("sample_click", | + | computer.queueEvent("sample_click", new Object[] {computer.getAttachmentName()}); |
− | |||
} | } | ||
} | } | ||
} | } | ||
</source> | </source> | ||
− | m_computersに登録されているすべてのComputerへIComputerAccess.queueEvent()で"sample_click" | + | m_computersに登録されているすべてのComputerへIComputerAccess.queueEvent()で"sample_click"イベントを発生させます。イベントのパラメータとして、パラメータの一番目に周辺機器の接続名を渡しています。 |
(synchronizedによる排他制御については後述) | (synchronizedによる排他制御については後述) |