Как получить трассировку потока во время чтения файла - PullRequest
0 голосов
/ 01 декабря 2011

У меня есть Файл, и я хочу выполнить следующую задачу: (просто чтобы получить больше информации о чтении и записи файла потока.)

Когда приложение запускается и файл читается, я хочу получить информацию овсе открытые потоки и сколько потоков читает из одного потока.

Есть ли способ, которым я могу получить всю информацию о потоках с помощью отражения.Есть ли другой способ?

Ответы [ 2 ]

0 голосов
/ 01 декабря 2011

Я бы предложил некоторый класс StreamFactory, который будет хранить эту информацию для вас.Затем потоки могут делать InputStream getStream(File) и closeStream(InputStream) или что-то подобное, и фабрика будет вести список того, у какого потока есть открытые потоки, и предоставлять некоторые статистические функции, такие как:

public Collection<InputStream> getOpenStreams()

и

public int getNumThreadsWithStream(InputStream);
0 голосов
/ 01 декабря 2011

Я считаю, что это то, что вы должны следить за собой. Если вы разделяете файловый поток между потоками (и я советую вам этого не делать, используйте один поток для чтения потока и, если вам нужно, передать работу в пул потоков). попытался прочитать поток.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...